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

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

  • 企业收取培训费
  • 可变现净值相关税费包括消费税吗
  • 会计所得税分录?
  • 如何查询个人所有贷款记录
  • 年终奖可以税前扣除嘛
  • 目前哪些费用不能加计扣除
  • 普通发票没有明细可以吗
  • 金蝶怎么反结账上月的凭证
  • 融资性售后回租是什么服务
  • 企业购买房产每年需要交什么税
  • 房产税的纳税义务
  • 企业改制重组增值税优惠政策
  • 售后回租业务是什么
  • 事业单位代扣社保分录
  • 个人设备租赁给公司怎么提供发票
  • 发票入账后查出金额错误
  • 深圳税种核定需要申报吗
  • 对公账户管理费怎么收
  • 老总来公司视察
  • 公司注销固定资产如何处理
  • 核定征收企业所得税应税所得率
  • 广告公司确认收入怎么写
  • 零申报做账怎么做
  • 个人可以做代理吗
  • 企业转让库存股,应按实际收到的金额
  • vue播放器
  • 水土保持补偿费是一次性征收吗
  • 净资产有哪些科目
  • 小规模纳税人无票收入免税吗
  • 物业公司成本结转方案
  • windows7中
  • win10玩游戏fps低怎么办
  • php proto
  • 资产证券化会计信息披露规范
  • php数据导出到excel
  • 跨市设立分公司
  • echarts柱形图
  • Aerial view of Chapel Bridge over the river Reuss in Lucerne, Switzerland (© Neleman Initiative/Gallery Stock)
  • Diffusion-GAN: Training GANs with Diffusion 解读
  • Request获取请求数据中文乱码问题
  • WGAN(Wasserstein GAN)看这一篇就够啦,WGAN论文解读
  • 微信小程序上面有个音乐怎么关闭
  • php判断ua
  • 金税盘税局端系统响应错误怎么解决
  • mongodb aggregate count
  • 一般商品销售的会计分录
  • 公允价值变动损益借贷方向增减
  • 全员啥意思
  • 成本核算需要哪些单据
  • mysql innodb锁
  • 业委会究竟在小区起什么作用
  • 因质量问题免费退货
  • 领款单有法律效力吗
  • 期末留抵税额怎么填报表
  • 项目清算后未售房产怎么纳税
  • 补交进项转出的税分录
  • 质量管理体系认证证书
  • 年度所得税未在第一季度所得税申报前汇算清缴
  • 给员工购买的意外险可以税前扣除吗
  • 产品质量认证费用属于什么成本
  • 营改增之后还有营业税金及附加吗
  • 事业单位职工福利费使用范围和标准
  • 如何编写wa
  • sql server的使用方法
  • 系统诊断工具命令
  • 使用u盘安装win10
  • 苹果电脑安装了双系统怎么恢复苹果系统
  • executing c1.exe
  • unsupportedclassversion
  • 5.2光源
  • Extjs中使用extend(js继承) 的代码
  • js去除hover样式
  • nodejs使用视频教程
  • 举例详解民法典第502条
  • unity3d效果图
  • 财政短信是什么意思
  • 投资性房地产如何进行后续计量
  • 税控盘服务费必须每年交吗为什么
  • 交17000办的保险是什么保险
  • 大专学费减免多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设