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

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

  • 苹果13pro5g开关在哪里(iphone13pro5g怎么开)

    苹果13pro5g开关在哪里(iphone13pro5g怎么开)

  • 建行电子回单在哪里找(建行电子回单在哪里找新版)

    建行电子回单在哪里找(建行电子回单在哪里找新版)

  • 问卷星能看到微信昵称吗(问卷星能看见微信号吗)

    问卷星能看到微信昵称吗(问卷星能看见微信号吗)

  • OPPO手机上方的HD图标怎么关闭(oppo手机上方的各种图标什么意思?)

    OPPO手机上方的HD图标怎么关闭(oppo手机上方的各种图标什么意思?)

  • 华为手表gt2什么时候上市(华为手表GT2什么系统)

    华为手表gt2什么时候上市(华为手表GT2什么系统)

  • 苹果x防水吗(苹果xsmax防水吗)

    苹果x防水吗(苹果xsmax防水吗)

  • 淘宝补发货怎么查物流(淘宝补发货怎么查看)

    淘宝补发货怎么查物流(淘宝补发货怎么查看)

  • 快手提示签名验证失败(快手出现签名验证失败,什么意思)

    快手提示签名验证失败(快手出现签名验证失败,什么意思)

  • ev录屏声音太小怎么办(ev录屏音量小)

    ev录屏声音太小怎么办(ev录屏音量小)

  • 电脑本地连接状态只有发送(电脑本地连接状态在哪里打开)

    电脑本地连接状态只有发送(电脑本地连接状态在哪里打开)

  • 华为P30流量怎样共享给别人用(华为p30如何设置流量)

    华为P30流量怎样共享给别人用(华为p30如何设置流量)

  • QQ邮箱发照片怎么发(qq邮箱发照片怎么重命名)

    QQ邮箱发照片怎么发(qq邮箱发照片怎么重命名)

  • qq大火花断了怎么恢复原来天数(qq火花断了怎么补签)

    qq大火花断了怎么恢复原来天数(qq火花断了怎么补签)

  • 红米k20pro发热严重怎么回事(红米k20pro发烫)

    红米k20pro发热严重怎么回事(红米k20pro发烫)

  • 联想小新air和pro的区别(联想小新air和pro哪个轻)

    联想小新air和pro的区别(联想小新air和pro哪个轻)

  • pr安装成功,为啥打不开(pr安装很久)

    pr安装成功,为啥打不开(pr安装很久)

  • 绿洲内的图片能保存吗(绿洲图片能保存吗)

    绿洲内的图片能保存吗(绿洲图片能保存吗)

  • 电脑屏幕左移怎么调(电脑屏幕左移怎么回事)

    电脑屏幕左移怎么调(电脑屏幕左移怎么回事)

  • 三星s6通话设置在哪里(三星手机的通话设置)

    三星s6通话设置在哪里(三星手机的通话设置)

  • 快手戳一下有什么用(快手戳一下有什么好处)

    快手戳一下有什么用(快手戳一下有什么好处)

  • 红米note8有没有nfc(红米note8有没有nfc功能怎么用)

    红米note8有没有nfc(红米note8有没有nfc功能怎么用)

  • macOS Catalina正式版系统好用吗 macOS Catalina上手体验评测(macos catalina新功能)

    macOS Catalina正式版系统好用吗 macOS Catalina上手体验评测(macos catalina新功能)

  • 微软正在测试,Windows Update 页面可提醒 Win11 升级兼容性(微软正在测试什么意思)

    微软正在测试,Windows Update 页面可提醒 Win11 升级兼容性(微软正在测试什么意思)

  • 手把手教你win10下安装Anaconda(手把手教你win7换主板不重装系统的方法)

    手把手教你win10下安装Anaconda(手把手教你win7换主板不重装系统的方法)

  • CSS中哪些属性可继承,哪些不可以?(css中哪些属性可以使用)

    CSS中哪些属性可继承,哪些不可以?(css中哪些属性可以使用)

  • telinit命令  更改系统的运行级别(如何更改telnet端口)

    telinit命令 更改系统的运行级别(如何更改telnet端口)

  • 增值税一般纳税人证明文件
  • 工程结算时如何确认收入
  • 出口报关单上面的运费怎么填
  • 计提工会经费为什么是增项
  • 单位购买预付卡
  • 管理费0.5%每年
  • 金蝶专业版二级科目设置
  • 企业清算过程中应收应付的处置
  • 当月少计提工资下月怎么处理?
  • 小额贷款业务涉及哪些法律
  • 公交补贴收入账务处理怎么做?
  • 分期收款发出商品一批,售价50000
  • 收到跨年的票据怎么做账
  • 律师事务所计提准备金的标准
  • 材料未验收入库属于哪个科目
  • 事业单位研发支出资本化
  • 分配利润怎么做科目
  • 发票有问题找谁
  • 其他税收收入包括
  • 各期预缴申报资产总额平均值之和
  • 一般纳税人减免的增值税怎么记账
  • 会计人员需要承担的责任
  • 拍卖的物品
  • 华为手机屏幕有个圆点怎么取消
  • 预付账款是企业销售过程中形成的一种非货币形式的债权
  • 苹果mac系统桌面空间不够
  • PHP:oci_new_collection()的用法_Oracle函数
  • 劳务外包开什么样的发票
  • 有哪些分享方式
  • 怎么扣除购入的物品
  • 罚款应该计入营业所吗
  • 退回以前年度多交增值税
  • 租房交了押金
  • 无偿转让股权如何做账
  • 解决的英文
  • 销售下脚料所收的费用
  • 征税小规模纳税申报
  • 详解php中的序列是什么
  • 资产减值损失科目性质
  • nvm for window
  • 律师事务所可不可以对外投资呢
  • 优先股可转让吗
  • 超简单的土法自制水泥
  • 织梦怎么用
  • 小规模销项税分录
  • 总分类科目的名称和核算内容
  • 包装物的账务处理例题
  • 发票盖错章怎么擦掉
  • 以前年度损益调整怎么做账
  • 冲暂估的账务处理
  • 暂估主营业务成本怎么冲销
  • 应付账款调整科目余额分录
  • 未分配利润科目余额在借方还是贷方
  • 财务负责人怎么实名认证
  • 平台使用费属于什么服务
  • 残疾人保障金必须交吗
  • oracle教程入门
  • 获取客户端所有cookie对象的方法
  • 安装win7系统后鼠标键盘不能用
  • 发生意外错误无法完成您的请求
  • ubuntu zmq
  • win7系统怎么更改桌面图标大小
  • linux新手教学
  • win8.0升级win8.1
  • windows vhd
  • 2015.3.25--2.cocos精灵移动 动画控制(一)
  • 手机物理游戏
  • 批处理文件是脚本吗
  • 安卓开发常见问题解决
  • [置顶]游戏名:chivalry2
  • android简单app实例
  • 安卓怎么记录时间
  • 重庆市电子税务局官网登录入口注册
  • 天津电子税务局官网登录入口网页版
  • 国家税务总局办税指南
  • 技术合同备案要求
  • 地税局热线电话是多少
  • 新领取的发票怎么读入金税盘
  • 河南省印花税核定征收暂行办法
  • 郑州广电地址
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设