Javascript 从Chrome打包应用程序写入文件
下面是我试图从Chrome应用程序写入简单文本文件的代码 调用Javascript 从Chrome打包应用程序写入文件,javascript,google-chrome-app,html5-filesystem,Javascript,Google Chrome App,Html5 Filesystem,下面是我试图从Chrome应用程序写入简单文本文件的代码 调用createWriter后,不会发生任何事情。不能让它工作,任何关于这方面的投入都是值得赞赏的 chrome.fileSystem.chooseEntry({type: 'saveFile'}, function(writableFileEntry) { writableFileEntry.createWriter(function(writer) { writer.onwriteend = function(e){
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/*"
]
}
}
}
errorHandler函数的定义超出了范围,导致了问题,将errorHandler函数移到范围内修复了问题!感谢Xan帮助进行故障排除。您确定已调用它吗?您是如何调试的?您的清单权限是什么?Supersharp是正确的。对于这种类型的问题,除了JavaScript代码外,请始终发布整个清单。@Xan:yes choose entry在我看到“文件选择器”对话框时被调用,在我选择文件后,我可以点击第3行的断点(writableFileEntry.createWr……)。调用createWriter时,不会发生任何事情……writer.write(lin10)处的断点从未被命中。@Xan:是的,问题在于没有正确定义errorHandler函数。谢谢