从 Chrome 打包的应用写入文件
Writing to a file from a Chrome packaged app
下面是我试图从 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/*"
]
}
}
}
errorHandler 函数定义超出范围并导致了问题,将 errorHandler 函数移动到范围内解决了这个问题!感谢 Xan 帮助解决问题。
下面是我试图从 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/*"
]
}
}
}
errorHandler 函数定义超出范围并导致了问题,将 errorHandler 函数移动到范围内解决了这个问题!感谢 Xan 帮助解决问题。