有谁知道为什么要使用' fileEntry.file'在我的Windows 8应用程序中保持失败?
如果我使用以下代码,则会失败:
Windows.Storage.StorageFile.getFileFromApplicationUriAsync(new Windows.Foundation.Uri(cordova.file.applicationDirectory + 'www/assets/pages/en/navigation.html')).done(usethisfile, fail);
function usethisfile(fileEntry) {
console.log("Im going to use the file... " + fileEntry.path);
fileEntry.file(function (file) {
var reader = new FileReader();
reader.onloadend = function() {
console.log("Successful file read: " + this.result);
};
reader.readAsText(fileEntry);
}, onErrorReadFile);
}
但如果我删除了' fileEntry.file'部分工作正常:
Windows.Storage.StorageFile.getFileFromApplicationUriAsync(new Windows.Foundation.Uri(cordova.file.applicationDirectory + 'www/assets/pages/en/navigation.html')).done(usethisfile, fail);
function usethisfile(fileEntry) {
console.log("Im going to use the file... " + fileEntry.path);
//fileEntry.file(function (file) {
var reader = new FileReader();
reader.onloadend = function() {
console.log("Successful file read: " + this.result);
};
reader.readAsText(fileEntry);
//}, onErrorReadFile);
}
官方文档说使用' fileEntry.file':https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-file/index.html我已经在Android和Apple商店都运行了应用程序,所以我希望我可以继续使用已经使用的所有当前函数' fileEntry.file'对于Windows版本。
我得到的错误是: 0x800a01b6 - JavaScript运行时错误:对象不支持属性或方法' file'。
我通过命令行和Visual Studio使用Cordova来运行它,如果这有帮助的话。
答案 0 :(得分:0)
不是100%肯定,但在定义onloadend方法时尝试添加e参数