位置: 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文件)

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

  • 如何找回访问过的网站(如何找回访问过的网站注册信息)

    如何找回访问过的网站(如何找回访问过的网站注册信息)

  • 电脑版微信可以发朋友圈吗(电脑版微信可以换头像吗)

    电脑版微信可以发朋友圈吗(电脑版微信可以换头像吗)

  • 苹果手机不能接打电话是怎么回事(苹果手机不能接打电话怎么回事)

    苹果手机不能接打电话是怎么回事(苹果手机不能接打电话怎么回事)

  • 网线接路由器能直接上网吗(网线接路由器能用接电脑不行怎么回事)

    网线接路由器能直接上网吗(网线接路由器能用接电脑不行怎么回事)

  • 5g的主要性能分别是什么什么和什么(5g技术主要性能优势)

    5g的主要性能分别是什么什么和什么(5g技术主要性能优势)

  • iphone11称重功能怎么用(iphone 11 称重功能怎么用)

    iphone11称重功能怎么用(iphone 11 称重功能怎么用)

  • 拼小圈没有开启别人能看到吗(拼小圈没有开启是怎样的)

    拼小圈没有开启别人能看到吗(拼小圈没有开启是怎样的)

  • 微信在另一个手机登录后重新登录要密码吗(微信在另一个手机上登录)

    微信在另一个手机登录后重新登录要密码吗(微信在另一个手机上登录)

  • 华为10e有指纹识别吗(华为10指纹解锁在哪儿设置)

    华为10e有指纹识别吗(华为10指纹解锁在哪儿设置)

  • 怎么截聊天记录一部分(怎么截聊天记录的长屏)

    怎么截聊天记录一部分(怎么截聊天记录的长屏)

  • 苹果手机晚上怎么拍照(苹果手机晚上怎么调夜间模式)

    苹果手机晚上怎么拍照(苹果手机晚上怎么调夜间模式)

  • 手机没欠费为什么没网(手机没欠费为什么呼叫失败)

    手机没欠费为什么没网(手机没欠费为什么呼叫失败)

  • 苹果xs死机如何解决(iphone xs 死机)

    苹果xs死机如何解决(iphone xs 死机)

  • 微信运动需要有网络吗(微信运动需要联网吗)

    微信运动需要有网络吗(微信运动需要联网吗)

  • 鸠摩搜书手机能在线看书吗(鸠摩搜书可以下载吗)

    鸠摩搜书手机能在线看书吗(鸠摩搜书可以下载吗)

  • 荣耀v9什么时候上市的(荣耀v9什么时候换手机下载)

    荣耀v9什么时候上市的(荣耀v9什么时候换手机下载)

  • pdf转word软件(pdf转word软件哪个好用)

    pdf转word软件(pdf转word软件哪个好用)

  • 苹果自动扣费能退款吗?(苹果自动扣费能退回来吗?)

    苹果自动扣费能退款吗?(苹果自动扣费能退回来吗?)

  • pp视频如何关闭弹幕(pp视频如何关闭会员续费)

    pp视频如何关闭弹幕(pp视频如何关闭会员续费)

  • ntldr丢失怎么装系统(ntldr找不到最简单解决方法)

    ntldr丢失怎么装系统(ntldr找不到最简单解决方法)

  • 闪电盒子怎么提现到微信里(闪电盒子怎么提现)

    闪电盒子怎么提现到微信里(闪电盒子怎么提现)

  • QQ音乐积分在哪里看(qq音乐积分在哪里领)

    QQ音乐积分在哪里看(qq音乐积分在哪里领)

  • qq电话怎么静音(qq电话怎么静音拨打电话)

    qq电话怎么静音(qq电话怎么静音拨打电话)

  • Win10系统如何开启AREO特效 Win10开启AREO特效方法(win10系统如何开启蓝牙)

    Win10系统如何开启AREO特效 Win10开启AREO特效方法(win10系统如何开启蓝牙)

  • 计算土地增值税时允许扣除的项目有
  • 生产企业免抵退税申报步骤
  • 无形资产摊销的会计科目
  • 企业收到投资者投入的生产设备,其账务处理
  • 个人社保部分公司承担可以入费用吗
  • 报表申报错误怎么作废重报
  • 工程项目的存货含哪些科目
  • 企业所得税工资薪金支出怎么填
  • 公益性支出所得税扣除比例
  • 公司老板个人卡收款 出纳有责任吗
  • 委托开发的软件产品即征即退
  • 企业设备维修管理制度
  • 工人受伤医药费计入什么科目
  • 银行收回贷款本息企业怎么做分录
  • 安装服务异地施工增值税在哪交
  • 增值税发票税率是星号
  • 企业如何避免风险
  • 代缴水电费是什么意思
  • 建设工程施工包括哪些工程
  • 不开票收入是怎么回事
  • 投资性房地产其他综合收益递延所得税
  • 银行存款余额调节表保管期限
  • 营改增贷款服务包括哪些
  • 应纳税所得额要减所得税费用吗
  • 发票打错了重新打要交税吗
  • 购买承兑汇票怎么做账
  • 鸿蒙系统桌面文件夹建立
  • 库存商品结转成本
  • 收到一张增值税红冲发票
  • 失控发票是什么
  • 如何回到一年前的方法
  • Linux怎么使用vi
  • 税务部门罚没收入计入什么科目
  • 默认网关不可用怎么修复
  • PHP:pg_fetch_all_columns()的用法_PostgreSQL函数
  • 赠与房屋再次出售税费
  • 不列颠哥伦比亚大学排名
  • 罂粟的花季
  • php设计模式六大原则
  • 季度缴纳企业所得税计算方法
  • 股息和未分配利润的区别
  • 城建税5%的是什么情况
  • 参展费会计分录
  • 应收票据应付票据合并抵消吗
  • 什么情况下需要异地预缴增值税
  • 电脑自学网
  • SQLserver数据库的while附近有语法错误,应为AS
  • mongodb unwind
  • 商业承兑汇票的流程
  • 科技型中小企业享受优惠税收政策
  • 银行对账单可以作为原始凭证入账吗
  • 外贸进项税额怎么算
  • 代缴员工个人所得税怎么做账
  • 建筑行业会计做账流程及会计分录
  • 公司购买垃圾箱会计分录
  • 用友t6反记账步骤
  • 国有土地使用权是什么意思
  • 退货的增值税专用发票怎么开
  • 一般纳税人的月销售额是多少可以不用交增值税
  • 工资中的扣款怎么做账
  • 买商品赠送赠品怎么做账
  • 房地产开发企业会计制度
  • 本期盈余结转会亏损吗
  • 电汇凭证是什么会计科目
  • 固定资产一次性扣除账务处理
  • 速动资产包括哪些流动资产
  • MySQL数据库中把表中的一个字段重命名
  • 加快Vista中多线程下载速度
  • 在windows操作中
  • 连接远程mq
  • Win10 Mobile 10572升级后QQ/微信无法发送图片
  • 华为nova7耳机怎么戴
  • Access to the path "LibraryUnityAssembliesUnityEngine.xml" is denied.
  • shell脚本入门详解
  • 一道关于医用口罩的数学题初二
  • python文字检测
  • unity3d怎么用
  • jq easyui
  • 云南省税务申报流程
  • 陕西省医保缴费截止日期2024
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设