vue + vue-office 实现多种文件(docx、excel、pdf)的预览
支持多种文件( docx、excel、pdf)预览的vue组件库,支持vue2/3。也支持非Vue框架的预览。
github: 《仓库地址》
演 示: 《演示效果》
功能特色
- 一站式:提供docx、pdf、excel多种文档的在线预览方案,有它就够了
- 简单:只需提供文档的src(网络地址)即可完成文档预览
- 体验好:选择每个文档的最佳预览方案,保证用户体验和性能都达到最佳状态
安装
-
#docx文档预览组件
-
npm install @vue-office/docx vue-demi
-
-
#excel文档预览组件
-
npm install @vue-office/excel vue-demi
-
-
#pdf文档预览组件
-
npm install @vue-office/pdf vue-demi
如果是vue2.6版本或以下还需要额外安装 @vue/composition-api
npm install @vue/composition-api/
使用示例
文档预览场景大致可以分为两种:
- 有文档网络地址,比如 https://***.docx
- 文件上传时预览,此时可以获取文件的ArrayBuffer或Blob
.docx文件预览
使用网络地址预览
-
<template>
-
<vue-office-docx
-
:src="docx"
-
style="height: 100vh;"
-
@rendered="rendered"
-
/>
-
</template>
-
-
//引入VueOfficeDocx组件
-
import VueOfficeDocx from '@vue-office/docx'
-
//引入相关样式
-
import '@vue-office/docx/lib/index.css'
-
-
export default {
-
components:{
-
VueOfficeDocx
-
},
-
data(){
-
return {
-
docx: 'http://static.shanhuxueyuan.com/test6.docx' //设置文档网络地址,可以是相对地址
-
}
-
},
-
methods:{
-
rendered(){
-
console.log("渲染完成")
-
}
-
}
-
}
上传文件预览
读取文件的ArrayBuffer
-
<template>
-
<div>
-
<input type="file" @change="changeHandle"/>
-
<vue-office-docx :src="src"/>
-
</div>
-
</template>
-
-
-
import VueOfficeDocx from '@vue-office/docx'
-
import '@vue-office/docx/lib/index.css'
-
-
export default {
-
components: {
-
VueOfficeDocx
-
},
-
data(){
-
return {
-
src: ''
-
}
-
},
-
methods:{
-
changeHandle(event){
-
let file = event.target.files[0]
-
let fileReader = new FileReader()
-
fileReader.readAsArrayBuffer(file)
-
fileReader.onload = () => {
-
this.src = fileReader.result
-
}
-
}
-
}
-
}
excel文件预览和pdf文件预览通过文件ArrayBuffer预览和上面docx的使用方式一致。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhickcee
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
excel图片置于文字下方的方法
PHP中文网 06-27 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信提示登录环境异常是什么意思原因
PHP中文网 04-09 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
微信人名旁边有个图标有什么用
PHP中文网 03-11