关于如何通过点击去预览一个pdf的文件,其实有很多实现方式。比如,通过页面内嵌iframe、使用kkFileView,或者直接通过window.open(url,targe),都可以实现pdf格式的文件预览。但是,我试过以后,感觉达不到我想要的那种效果。内嵌iframe虽然可以很好的显示pdf的文件,但是,它没办法重新打开一个新的页面去预览。kkFileView我觉得不是很稳定,有时会丢失文件中的一些内容。window.open(url,targe)虽然可以重新打开一个页面,但是,有些pdf文件无法正常显示。我想要的是那种点击后,会重新开一个页签,内容能够完整的展现出来的效果;下面是我实现pdf预览的过程
pdf文件的预览展示,我使用的是vue-pdf库
1.vue-pdf库安装
npm install --save vue-pdf
2.在预览的页面中使用
【tip】预览pdf要单独写一个页面,以后哪个页面需要预览pdf,直接引入这个页面,然后传入url即可
3.给这个pdf单独的页面配置路由;
4.在任何页面我想要实现点击预览pdf文件,可以在点击事件中这样写;
这样就实现了pdf文件,点击重新打开个窗口预览的效果。
5.如果想打开word、excel等文件,也可以通过这种方式。不过需要安装word 或 excel的第三方库:
(1)word文件预览的第三方库的引入:npm install @vue-office/docx vue-demi
(2)在要展示word文件的页面引入 import VueOfficeDocx from "@vue-office/docx";
这里注意还要多引入对应的css->import "@vue-office/docx/lib/index.css";
这是word的文件预览的使用方式。excel也和word的是一样的。