我试图通过使用离子本机插件文件选择器,文件路径和文件来获取文件的绝对路径它将被传输到其余的api。
所以,这是我的代码:
getFile(){
this.fileChooser.open().then((uri)=>{
// First, getting the file uri then do the resolve
(<any>window).FilePath.resolveNativePath(uri, (path)=>{
// (path) output is something like file:///storage/emulated/0/Download/eng3.pdf
this.file.resolveLocalFilesystemUrl(path).then((entry: any)=>{
entry.file((resFile)=>{
var reader = new FileReader();
reader.onloadend = (encodedFile: any)=>{
alert(encodedFile);
};
reader.readAsDataURL(resFile);
});
});
});
});
}
执行path
之后,我可以获取文件的resolveNativePath()
,并通过执行alert()
来查看输出。因此,我试图查看使用resolveLocalFilesystemUrl()
处理过的数据,但是没有返回任何值。
我现在无法跟踪流程,因为我看不到结果,也不确定该函数发生了什么。我遵循了http://tphangout.com/ionic-2-serving-images-with-firebase-storage/的一些教程,并根据此讨论Cannot read a file using cordova file plugin in an Ionic 2 project
的其他实践对我的代码进行了一些编辑。