我正在开展离子3 项目,我想在" assets / pdf" pdf 文件>文件夹。 我为此使用了离子原生文件开启工具。但它会抛出一个错误,说找不到文件
import { File } from '@ionic-native/file';
import { FileOpener } from '@ionic-native/file-opener';
constructor(private file: File, private fileOpener: FileOpener) { }
public openFile() {
const url = "assets/pdf/unit1.pdf";
this.fileOpener.open(this.file.applicationDirectory + url, 'application/pdf')
.then(() => console.log('File is opened'))
.catch(e => {
console.log('Error openening file', e);
});
}
这似乎是路径中的错误。但我不知道如何使用它。任何人都知道如何使用这个功能?
答案 0 :(得分:1)
为了解决这个问题,我要做的就是在打开文件之前将文件复制到externalCacheDirectory。
this.file.copyFile(this.file.applicationDirectory + 'www/assets/pdf/', this.filename, this.file.externalCacheDirectory, this.filename)
.then( _ => {
this.fileOpener.open(this.file.externalCacheDirectory + this.filename, 'application/pdf')
.then( _ => {
console.log('File opened');
})
.catch(e => console.log("Error opening file: " + JSON.stringify(e)));
})
.catch( e => {
console.log("Error copying file: " + JSON.stringify(e));
});
答案 1 :(得分:0)
我想你确认文件是否真的在那条路径中。 您可以尝试使用Ionic Document Viewer,请看一下: Ionic Document Viewer ,应该解决你的问题,试一试..