位置: IT常识 - 正文

vue实现本地预览word(docx)、excel(xlsx)、pdf文件(前端vue实现预览excel)

编辑:rootadmin
vue实现本地预览word(docx)、excel(xlsx)、pdf文件 vue实现本地预览word(docx)、excel(xlsx)、pdf文件实现效果:

推荐整理分享vue实现本地预览word(docx)、excel(xlsx)、pdf文件(前端vue实现预览excel),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue展示本地图片,vue预览本地文件,vue展示本地图片,vue本地预览excel,vue怎么预览写出来的界面,vue本地预览excel,vue预览本地文件,vue预览本地文件,内容如对您有帮助,希望把文章链接给更多的朋友!

通过点击预览,浏览器打开新标签页展示文件内容 word效果: pdf效果: excel效果:

前期准备:vue实现本地预览word(docx)、excel(xlsx)、pdf文件(前端vue实现预览excel)

word插件:

npm install --save docx-preview

excel插件:

npm install --save @handsontable/vue npm install --save handsontable npm install --save handsontable/i18n npm install --save exceljs xlsx的部分参考的是竹业大佬的开源代码,表格样式需要引入代码中的xlsx文件中的所有内容,有兴趣的小伙伴可以源码内容 Demo地址[1]:https://zhuye1993.github.io/file-view/dist/index.html github地址:https://github.com/zhuye1993/file-view/tree/master/src/vendors 本文使用的位置,以及引用方法

pdf插件:

pdf.js下载地址 http://mozilla.github.io/pdf.js/getting_started/#download 下载好的文件放如下位置即可

代码:1.全局方法:officeView// 文件预览/**row: 包含fileUrl文件地址的对象*that: vueRouter实例 */export const officeView = function(row, that) { // 获取文件类型 const type = row.fileUrl.substring(row.fileUrl.lastIndexOf('.') + 1, row.fileUrl.length).toLowerCase() if (type.indexOf('pdf') !== -1) { // pdf预览 const pdfSrc = 'pdf/web/viewer.html?file=' + encodeURIComponent(downloadUrl + row.fileUrl) // 打开新标签页 window.open(pdfSrc, '_blank') } else if (type.indexOf('docx') !== -1) { // docx预览 // 获取目标路由地址 const routeUrl = that.resolve({ name: 'OfficeView', query: { fileUrl: downloadUrl + row.fileUrl, fileType: 0 } }) // 打开新标签页 window.open(routeUrl.href, '_blank') } else if (type.indexOf('xlsx') !== -1) { // xlsx预览 // 获取目标路由地址 const routeUrl = that.resolve({ name: 'OfficeView', query: { fileUrl: downloadUrl + row.fileUrl, fileType: 1 } }) // 打开新标签页 window.open(routeUrl.href, '_blank') } else { Message({ type: 'error', message: '仅支持docx、pdf、xlsx文件预览,其它类型文件请下载查看' }) }}2.路由跳转至OfficeView文件,此文件展示word,excel预览内容<template> <div> <!-- excel文件内容位置 --> <div ref="output" /> <!-- wor文件内容位置 --> <div v-if="fileType == 0" id="container" /> </div></template><script>import { renderAsync } from 'docx-preview'import renderSheet from './xlsxView'export default { data() { return { fileUrl: null, fileType: 0, tableData: null, last: null } }, created() { // 从路由地址中获取fileUrl,fileType this.fileUrl = this.$route.query.fileUrl ? this.$route.query.fileUrl : null this.fileType = this.$route.query.fileType ? parseInt(this.$route.query.fileType) : 0 if (this.fileUrl == null) { this.$message({ type: 'error', message: '文件地址无效,请刷新后重试' }) } // 加载文件内容 this.uploading(this.fileUrl) }, methods: { // 加载文件内容 uploading(file) { // 获取文件流 const xhr = new XMLHttpRequest() xhr.open('get', file, true) xhr.responseType = 'blob' xhr.onload = () => { if (xhr.status === 200) { if (this.fileType === 0) { // word预览 renderAsync( xhr.response, document.getElementById('container'), null, { className: 'docx', // 默认和文档样式类的类名/前缀 inWrapper: true, // 启用围绕文档内容渲染包装器 ignoreWidth: false, // 禁止页面渲染宽度 ignoreHeight: false, // 禁止页面渲染高度 ignoreFonts: false, // 禁止字体渲染 breakPages: true, // 在分页符上启用分页 ignoreLastRenderedPageBreak: true, // 禁用lastRenderedPageBreak元素的分页 experimental: false, // 启用实验性功能(制表符停止计算) trimXmlDeclaration: true, // 如果为真,xml
本文链接地址:https://www.jiuchutong.com/zhishi/275454.html 转载请保留说明!

上一篇:Windows系统中Hosts文件的作用(window的hosts文件)

下一篇:如何知道家里网速测速多少兆?(如何知道家里网络是多少兆)

  • 如何备份微信的聊天记录(如何备份微信的聊天记录到新手机)

    如何备份微信的聊天记录(如何备份微信的聊天记录到新手机)

  • 苹果手机发短信怎么选择卡1卡2(苹果手机发短信怎么切换主副卡)

    苹果手机发短信怎么选择卡1卡2(苹果手机发短信怎么切换主副卡)

  • 苹果xr能不能用5v2a的充电(苹果xr能不能用5w快充)

    苹果xr能不能用5v2a的充电(苹果xr能不能用5w快充)

  • aqmal00是华为什么型号(aqmal00是华为10s吗)

    aqmal00是华为什么型号(aqmal00是华为10s吗)

  • 荣耀10x有红外线功能吗(荣耀10x有没有红外)

    荣耀10x有红外线功能吗(荣耀10x有没有红外)

  • 美团怎么回复顾客评论(美团怎么回复顾客)

    美团怎么回复顾客评论(美团怎么回复顾客)

  • iphonex下架还是停产

    iphonex下架还是停产

  • 怎么关闭余利宝的自动转入(怎么关闭余利宝的银行卡自动转入)

    怎么关闭余利宝的自动转入(怎么关闭余利宝的银行卡自动转入)

  • gps定位器可以换卡吗(gps定位器换卡怎么弄)

    gps定位器可以换卡吗(gps定位器换卡怎么弄)

  • 微机主板上装有什么(微机的主板)

    微机主板上装有什么(微机的主板)

  • 微星b450m有蓝牙功能吗(微星b450m主板有蓝牙吗)

    微星b450m有蓝牙功能吗(微星b450m主板有蓝牙吗)

  • 快手由于违反社区规定账号封禁是永久吗(快手由于违反社区规定,账号封禁怎么办)

    快手由于违反社区规定账号封禁是永久吗(快手由于违反社区规定,账号封禁怎么办)

  • 抖音没关注可以私信吗(抖音没关注可以发私信吗)

    抖音没关注可以私信吗(抖音没关注可以发私信吗)

  • 苹果手机永久删除照片(苹果手机永久删除的照片怎么恢复)

    苹果手机永久删除照片(苹果手机永久删除的照片怎么恢复)

  • 爱奇艺vip怎么让别人用(爱奇艺vip怎么让别人登录)

    爱奇艺vip怎么让别人用(爱奇艺vip怎么让别人登录)

  • 拼多多闪电退货怎么关闭(拼多多闪电退货有运费险吗)

    拼多多闪电退货怎么关闭(拼多多闪电退货有运费险吗)

  • 1more是什么耳机(1moreibfree耳机是什么水平)

    1more是什么耳机(1moreibfree耳机是什么水平)

  • 微信删除联系人对方知道吗(微信删除联系人对方还能发过来信息)

    微信删除联系人对方知道吗(微信删除联系人对方还能发过来信息)

  • 微信冒泡所有人可见吗(微信冒泡功能)

    微信冒泡所有人可见吗(微信冒泡功能)

  • qq附近群聊在哪里找(qq附近群聊在哪里找2020)

    qq附近群聊在哪里找(qq附近群聊在哪里找2020)

  • 百度经验是什么(百度经验百度百科)

    百度经验是什么(百度经验百度百科)

  • 小米m1810f6le是什么型号(小米m1810f6le是什么型号手机)

    小米m1810f6le是什么型号(小米m1810f6le是什么型号手机)

  • 手机自带wifi怎么设置(手机自带wifi怎么弄)

    手机自带wifi怎么设置(手机自带wifi怎么弄)

  • 前端401错误 & 解决方法:响应拦截器(前端报405错误)

    前端401错误 & 解决方法:响应拦截器(前端报405错误)

  • golang 和java对比(golang 和 java)

    golang 和java对比(golang 和 java)

  • 业务招待费福利费怎么算超支
  • 城市维护建设税为什么是流转税
  • 企业所得税弥补亏损明细表怎么填写
  • 冲回多提的坏账准备分录为
  • 非限定性净资产相当于本年利润吗
  • 预付的成本票计入什么科目?
  • 高新企业申报指南
  • 年审和税审的区别是什么
  • 其他收益科目是否征收企业所得税
  • 投资款返还案例
  • 所得税汇算清缴分录怎么做
  • 增值税专票怎么抵扣
  • 补充协议如何生效
  • 低值易耗品库存
  • 费用的完成率怎么计算
  • 金税三期个人所得税怎么下载
  • 小规模 开增值税
  • 营改增前城建税的税率
  • 企业怎么办税
  • 税务大厅补报个税怎样申报
  • 农产品税率2020
  • 没有签订劳动合同员工离职怎么处理
  • 免税销售额计入主营业务收入吗
  • 怎么查询企业的注册资金
  • 呆账怎么写会计分录
  • 固定资产的销售
  • 个税退手续费怎么申请
  • 车辆哪些费用计税
  • 付给他人押金的会计分录
  • php preg_grep
  • 股东以非货币出资办理什么手续
  • backup是什么文件夹怎么能打开
  • 契税发票遗失怎么处理
  • PHP:imagecolorresolvealpha()的用法_GD库图像处理函数
  • 土方工程公司账务实例
  • 总分类账的登记依据和方法取决于企业所采用的
  • 短期借款产生的利息进入总账吗
  • 基于opencv的图像处理
  • php获取网页所有页数
  • 合伙企业利润分配首要依据
  • vue process.env.node_env
  • 工具tj
  • imu定位
  • chat p
  • phpcms v9 getshell
  • python魔法方法详解
  • 投资别人公司的注意事项
  • 打印银行电子回单在打印机上怎么设置A5
  • 抚恤金发放标准2019年
  • 房地产个税是什么意思
  • 房开企业会计分录
  • 会计报表编制基本要求
  • 失业保险金领取多少钱
  • 公司抽奖奖品设置
  • 提取安全生产费用是什么意思
  • 分公司交总公司管理费怎么做账
  • 工地会计怎么做账
  • 虚开发票但是没有成本如何做账?
  • 享受所得税减免优惠的生产性外商投资企业包括
  • 企业垃圾桶
  • 报销的发票抬头怎么填
  • 员工办理健康证费用由谁支付
  • 民办非企业没有了吗
  • 房地产开发企业资质管理规定
  • 工业会计建账做账流程
  • mysql不能写入中文
  • sql2008r2镜像
  • 苹果电脑mac系统怎么用
  • mac如何通过终端启动
  • 创建windows
  • win10预览版21277
  • centos中如何安装软件
  • 分区显示
  • win7系统如何关闭开机自动启动软件
  • win7关闭系统更新在哪里
  • 如何解决老电脑卡顿问题
  • android+
  • fragment里面如何嵌套fragment
  • js获取当前点击事件的节点
  • 江苏税务法人实名采集怎么操作流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设