Vue实现docx/xlsx/pdf等类型文件预览功能
作者:蛰伏已久
这篇文章主要为大家详细介绍了如何溧阳Vue实现docx/xlsx/pdf等类型文件预览功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
都2023年了,怎么文件预览还这么难!
发现了问题之后,就想着能不能实现一个简单的VUE组件库,能够解决以上问题,让新手前端,能够非常高效的完成文件预览任务。
于是,我期望开发一个vue-office组件库,它必须满足以下3个要求
- 使用一定要简单,对新手要友好,即传递一个文件地址,就可实现预览
- 提供多种文件的一站式预览解决方案,解决常见的docx、excel、pdf三种文件的预览
- 预览效果也好,不只是对内容预览,也要支持样式
要求明确了,实现就相对简单了,从github上筛选每个文档最优的预览方案,然后封装成VUE组件,但是坑还是非常多的,文章最后一部分介绍。
使用
安装
有三个组件,可以分别根据需要进行安装
//docx文档预览组件 npm install @vue-office/docx //excel文档预览组件 npm install @vue-office/excel //pdf文档预览组件 npm install @vue-office/pdf
使用示例
docx文档的预览
<template> <vue-office-docx :src="docx" @rendered="rendered"/> </template> <script> //引入VueOfficeDocx组件 import VueOfficeDocx from '@vue-office/docx' export default { components:{ VueOfficeDocx }, data(){ return { docx: 'http://static.shanhuxueyuan.com/test6.docx' //设置文档地址 } }, methods:{ rendered(){ console.log("渲染完成") } } } </script>
excel文档预览
<template> <vue-office-excel :src="excel" @rendered="rendered"/> </template> <script> //引入VueOfficeExcel组件 import VueOfficeExcel from '@vue-office/excel' //引入相关样式 import '@vue-office/excel/lib/index.css' export default { components:{ VueOfficeExcel }, data(){ return { excel: 'http://static.shanhuxueyuan.com/demo/excel.xlsx'//设置文档地址 } }, methods:{ rendered(){ console.log("渲染完成") } } } </script>
pdf文档预览
<template> <vue-office-pdf :src="pdf" @rendered="rendered"/> </template> <script> //引入VueOfficePdf组件 import VueOfficePdf from '@vue-office/pdf' export default { components:{ VueOfficePdf }, data(){ return { pdf: 'http://static.shanhuxueyuan.com/test.pdf' //设置文档地址 } }, methods:{ rendered(){ console.log("渲染完成") } } } </script>
整个使用方式非常简单,基本上给定文档的src地址,或者是上传文件的ArrayBuffer、Blob格式数据就可实现预览,详细方法见github中的介绍。
到此这篇关于Vue实现docx/xlsx/pdf等类型文件预览功能的文章就介绍到这了,更多相关Vue文件预览内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!