Kew*_*sse 5 android typescript ionic-framework ionic3
我正在使用Ionic 3中的File API插件中的checkFile函数来检查文件是否存在于本地.Promise拒绝以下错误:
FileError {code:5,message:"ENCODING_ERR"}
从我在文件API的Mozilla文档中看到的,问题是"URL格式错误".但是,我不知道URL是如何格式错误的.这是相关代码,显示我如何调用函数加上涉及变量的实际值(值的baseDirectory设置为file:///data/user/0/ch.protectator.fehpedia/files/):
let baseDirectory = this.file.dataDirectory;
let fileToCheck = "File:Icon Portrait Abel.png";
let promise = this.file.checkFile(this.file.dataDirectory, fileName).then(bool => {
// Things
}, reason => {
console.error(reason);
});
Run Code Online (Sandbox Code Playgroud)
这就是失败的承诺.这种情况的奇怪之处在于我实际上试图在代码中稍后显示该图像,忽略File.checkFile是否找到它并显示图像.
在HTML模板中,我稍后使用:
<img [src]="imgUrl">
Run Code Online (Sandbox Code Playgroud)
在哪里imgUrl设置使用:
this.imgUrl = this.file.dataDirectory + '/' + "File:Icon Portrait Abel.png";
Run Code Online (Sandbox Code Playgroud)
因此,当WebView调用时,图像存在并正确显示,但是Native File插件告诉我URL格式错误,即使对我来说它似乎是完全相同的URL.这就是我被困住的地方,我不知道要改变什么代码才能工作.应该checkFile以不同的方式使用?另外,更准确的失败原因会有所帮助,但我得到的只是ENCODING_ERR,我不知道URL的实际部分看起来有多么错误.
Kew*_*sse 12
在查看类似案例后,我找不到有关此特定案例的解决方案或文档.但在尝试不同的值时,我发现了导致此错误的原因::.是的,结肠.文件名中存在的那个.
虽然我仍然没有解释为什么 :导致本机File插件失败而不是Web视图,但是:从文件名中删除有效地允许File在不提高的情况下查看它ENCODING_ERR.虽然这不是最佳解决方案,但这种解决方法很有效.
| 归档时间: |
|
| 查看次数: |
7404 次 |
| 最近记录: |