PhoneGap + Sencha Touch 2を使用してネイティブAndroidアプリを作成しました。サーバーへのファイルのアップロードに成功しましたが、FileTransfer upload()メソッドのアップロード成功コールバック関数からビューにアクセスできません。これが私のコードです:
コールバックのアップロード:
uploadPicture: function(imageURI) {
var options = new FileUploadOptions(),
params = new Object(),
fileTransfer = new FileTransfer(),
builder = this.getBuilder(),
app = this.getApplication(),
uri = encodeURI('/myservlet');
options.fileKey = 'file';
options.fileName = imageURI.substr(imageURI.lastIndexOf('/') + 1);
options.mimeType = 'image/jpeg';
params.myparams = something;
params.moreparams = evenmore;
options.params = params;
options.chunkedMode = false;
fileTransfer.upload(imageURI, uri, this.uploadSuccess.bind(this), this.uploadError.bind(this), options);
},
アップロード成功機能
uploadSuccess: function (r) {
var builderChild = this.getBuilderChild(),
data = r.response.attachment;
builderChild.addInstance(builderChild.config, data);
navigator.notification.alert('Attachment successful.');
}
uploadSuccess関数に入ると、builderChildオブジェクトは未定義です。この同じコントローラーを介して他の関数でbuilderChildオブジェクトを使用できましたが、uploadSuccessでは使用できませんでした。
何か案は?