我正在使用手机间隙,请参阅http://docs.phonegap.com/en/1.5.0/phonegap_file_file.md.html#FileWriter
我正在尝试这样做:
我正在将FileWriter(HTML5对象)传递给函数。
我需要下载一个文件,然后使用编写器写入文件,但是...如何从回调内部访问文件编写器?
function onNotGotIntrattenimento() {
sdcard.getFile("maiscai/intrattenimento.js",
{create: true, exclusive: false},
onCreatedIntrattenimentoWriter, onError);
}
function onCreatedIntrattenimentoWriter (intrattenimento_writer) {
intrattenimento_writer.onwrite = onIntrattenimentoUpdated();
downloadIntrattenimento(intrattenimento_writer);
}
function downloadIntrattenimento(intrattenimento_writer) {
$.ajax({
url: intrattenimento_link,
context: document.body
}).done(function(data) {
intrattenimento_writer.write(data);
});
}
如何在完成的回调中调整intrattenimento_write.write方法?!?!
我收到错误
03-22 22:02:56.896:E / Web Console(27627):TypeError:结果 表达式'intrattenimento_writer.write'[undefined]不是 功能。在file:///android_asset/www/app.js:62
答案 0 :(得分:3)
你是否有拼写错误?你错过了最后一个'r':
你有:
intrattenimento_write.write(data);
应该是:
intrattenimento_writer.write(data);
更新:既然您已经更正了原始问题,我上面的回答就没有任何意义了。但是,您现在显示的代码绝对正确。您应该可以访问intrattenimento_writer
就好了。
您确定intrattenimento_write
变量具有write
功能吗?如果是这样,你能显示与该功能相关的代码吗?
更新2:
我刚刚查看了您提供的PhoneGap文档。首先让我说我完全没有使用PhoneGap的经验,但是从文档来看,您似乎需要在createWriter
对象上使用intrattenimento_write
方法才能使用write
。看看他们正在使用的例子:
function gotFS(fileSystem) {
fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.createWriter(gotFileWriter, fail);
}
function gotFileWriter(writer) {
...
writer.write("some sample text");
}