Ошибка обратного вызова FileTransfert в PhoneGap - PullRequest
1 голос
/ 24 февраля 2012

Я использую метод FileTransfert от PhonGap, вот так

        var options = new FileUploadOptions();
        options.fileKey="file";
        options.mimeType="image/jpeg";
        //options.chunkedMode = true;

        var params = new Object();
        params.title = title;
        params.content = content;
        params.groupId = groupId;

        options.params = params;

        var ft = new FileTransfer();
        app.loadmask.show();
        ft.upload(app.imageURI, app.stores.actionAjaxURL + "&cmd=addActualite", this.onSuccessCreateActualite, this.onFailureCreateActualite, options, true);

Это относится к функции обратного вызова успеха, которая:

onSuccessCreateActualite: function(response, options) {
        /* REINIT FORM VALUES */
        app.imageURI = null;
        console.log("This log appears");
        this.titleField.reset();
        console.log("This log does not appear");
        this.groupSelect.reset();
        this.contentField.reset();
        this.addBtn.resumeEvents();
        this.picturePnl.update("No Picture");

        app.stores.actualites.load();
        app.loadmask.hide();
        app.views.viewport.actualites.setActiveItem(
            app.views.viewport.actualites.actualitesList, {type:'slide', direction:'right'}
        );

        app.views.viewport.actualites.actualitesList.actuGrid.scroller.scrollTo({ x: 0, y: 0 });
},

И я получаю эту ошибку:

Ошибка при успешном обратном вызове: com.phonegap.filetransfer1 = TypeError: 'undefined' не является объектом

Кто-нибудь знает почему?

Спасибо

Ответы [ 2 ]

2 голосов
/ 24 февраля 2012

Похоже, что this.titleField выходит за рамки вашей функции onSuccessCreateActualite. Скорее всего, «это» относится к другому объекту, чем вы думаете. Я бы проверил, что такое свойства «this», чтобы увидеть, на что оно действительно ссылается.

0 голосов
/ 11 сентября 2012

У меня была такая же проблема с моим прицелом.Попробуйте вызвать функцию следующим образом:

this.onSuccessCreateActualite.bind(this)

в вашем методе upload().

...