【发布时间】:2015-12-15 01:03:39
【问题描述】:
下面是我尝试从 Chrome 应用程序写入简单文本文件的代码。
一旦createWriter 被调用,什么都不会发生。无法正常工作,对此的任何意见表示赞赏。
chrome.fileSystem.chooseEntry({type: 'saveFile'},
function(writableFileEntry) {
writableFileEntry.createWriter(function(writer) {
writer.onwriteend = function(e){
console.log("save completed!!");
};
writer.onerror = function(e){
console.log("save failed!!");
};
writer.write(new Blob(["Hello World!!!"],{type: 'text/plain'}));
}, errorHandler);
});
Mainifest.json
{
"name": "FileIO",
"version": "1.0",
"manifest_version": 2,
"minimum_chrome_version": "23",
"app": {
"background": {
"scripts": ["background.js", "myscript.js"]
}
},
"icons": {
"128": "icon.png"
},
"permissions": [
"fileSystem",
{"fileSystem" : ["write","retainEntries", "directory"] }
],
"file_handlers": {
"text": {
"types": [
"text/*"
]
}
}
}
【问题讨论】:
-
你确定它被调用了吗?您是如何尝试调试的?
-
您的清单权限是什么?
-
Supersharp 是对的。对于此类问题,除了 JavaScript 代码之外,请始终发布整个清单。
-
@Xan : 是的,当我看到文件选择器对话框时,选择条目被调用,在我选择文件后,我可以在 line3( writableFileEntry.createWr....... ..)。当 createWriter 被调用时,什么也没有发生...... writer.write(lin10) 处的断点永远不会被击中。
-
@Xan:是的,问题在于没有正确定义 errorHandler 函数。谢谢!!
标签: javascript google-chrome-app html5-filesystem