位置: IT常识 - 正文

vue 前端根据url在线预览pdf、docx、xlsx、txt、html文件(vue页面获取url参数)

编辑:rootadmin
vue 前端根据url在线预览pdf、docx、xlsx、txt、html文件 一、pdf通过pdf.js实现

推荐整理分享vue 前端根据url在线预览pdf、docx、xlsx、txt、html文件(vue页面获取url参数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue请求url,vue页面获取url参数,vue页面获取url参数,vue url-loader,vue通过url访问单个页面,vue url-loader,vue前端怎么调用接口代码,vue url#,内容如对您有帮助,希望把文章链接给更多的朋友!

1、下载pdf.js文件夹; http://mozilla.github.io/pdf.js/ 2、将下载的文件拉进项目中; 详见:https://blog.csdn.net/m0_56415970/article/details/124316169 3、iframe

<iframe id="iframe" :src="url" frameborder="0" ></iframe> return 'web/viewer.html?file=' + this.pdfUrlvue 前端根据url在线预览pdf、docx、xlsx、txt、html文件(vue页面获取url参数)

注: 使用pdf.js时,当有跨域的问题时,会加载失败,错误信息为: file origin does not match viewer’s。

注释掉web/viewer.js中的这几行,不去判断跨域即可。

if (origin !== viewerOrigin && protocol !== 'blob:') { throw new Error('file origin does not match viewer\'s');}

禁掉这三行。

二、docx通过插件docx-preview实现

1、安装: npm i docx-preview --save 2、vue文件中引入: var docx = require("docx-preview"); 3、使用

<div ref="file"></div>axios({ method: 'get', responseType: 'blob', // 设置响应文件格式 url: this.url,//后端获取到的文件url }).then(({ data }) => { docx.renderAsync(data, this.$refs.file) // 渲染到页面预览 })三、xlsx

1、安装: npm i xlsx --save 2、vue文件中引入: let XLSX = require('xlsx')

3、使用

<div v-html="tableau"></div>axios.get(this.url, { responseType: 'arraybuffer', // 设置响应体类型arraybuffer }).then(({ data }) => { let workbook = XLSX.read(new Uint8Array(data), { type: 'array' }) // 解析数据 let worksheet = workbook.Sheets[workbook.SheetNames[0]] // workbook.SheetNames 下存的是该文件每个工作表名字,这里取出第一个工作表 this.tableau = XLSX.utils.sheet_to_html(worksheet) // 渲染 })四、txt和html文件//txt<div class="txtSty"> {{ txt }}</div>//html<div v-html="htmlText" class="htmlSty"></div> loadTxtOrHtml(url,num) { var xh = window.Event ? new XMLHttpRequest() : new window.ActiveXObject('Microsoft.XMLHTTP') xh.open('GET', url, true) //这里改变编码格式,如果是txt格式,则为gb2312,如果是html格式,则为utf-8 let code = num == '3'? 'gb2312':'utf-8' if (window.Event) xh.overrideMimeType('text/xml;charset='+ code) xh.onreadystatechange = ()=> { if (xh.readyState != 4) return var v v = window.Event ? xh.responseText : window.gb2utf8(xh.responseBody) this.txt = v//txt文件内容 this.htmlText = v//html文件内容 } window.gb2utf8 = (data)=> { var glbEncode = [], t, i, j, len var gb2utf8_data = data window.execScript("gb2utf8_data = MidB(gb2utf8_data, 1)+' '", 'vbscript') t = escape(gb2utf8_data) .replace(/%u/g, '') .replace(/(.{2})(.{2})/g, '%$2%$1') .replace(/%([A-Z].)%(.{2})/g, '@$1$2') t = t.split('@') i = 0 len = t.length while (++i < len) { j = t[i].substring(0, 4) if (!glbEncode[j]) { var gb2utf8_char = eval('0x' + j) window.execScript('gb2utf8_char=Chr(gb2utf8_char)', 'vbscript') glbEncode[j] = escape(gb2utf8_char).substring(1, 6) } t[i] = glbEncode[j] + t[i].substring(4) } gb2utf8_data = gb2utf8_char = null return unescape(t.join('%')).slice(0, -1) } xh.send(null) },
本文链接地址:https://www.jiuchutong.com/zhishi/278004.html 转载请保留说明!

上一篇:在Linux中安装是使用系统性能监控软件Nmon(linux安装方式有)

下一篇:microsoft.exe进程查询 microsoft进程是什么意思 作用是什么(office进程)

  • 已注册登记的机动车有什么情形的
  • 固定资产一次性折旧的账务处理和税务处理
  • 印花税申报减免额不能为0怎么报
  • 子公司分红母公司缴税吗
  • 公司取现需要带什么东西
  • 香港保险代理人佣金
  • 购买金税盘抵扣
  • 可转换公司债券属于哪一类金融资产
  • 个人住房契税2021年收费标准
  • 销售给客户红包,说给的现金,如何把控
  • 企业如何运用内部招募
  • 房屋维修基金怎么入帐
  • 产品质量赔款的账务处理
  • 学校的房子归哪里管
  • 股权增资稀释股价会涨吗
  • 小规模纳税人增值税超过30万怎么纳税
  • 出租厂房收取水电费吗
  • 安置房账务处理
  • 每季度财务报表
  • 建筑设计公司的账务处理
  • xp从做系统
  • 内部交易逆流如何算利润
  • 增值税留抵税额在借方还是贷方
  • 汇算清缴后的会计分录
  • 工商企业年报网上申报流程
  • 如何网络测试
  • 办公费用减少的原因
  • linux init3
  • linux命令大全详解
  • php读取excel内容
  • 前端面试题目100及最佳答案
  • 个税零申报流程视频教程
  • php图片上添加文字的方法
  • 税负太高会预警吗
  • css鼠标移入移出切换事件
  • 中标费用由哪方出
  • 申报财务报表利润怎么写
  • python replace 多个
  • jquery ui table
  • 利息收入怎么入账
  • sqlserver2016使用方法
  • 小规模纳税人免税政策2022
  • 城镇土地使用税征收标准及计算方法
  • 医院销售药品是否缴纳增值税
  • 提取备用金如何填写现金日记账
  • 代开发票取得的收入如何入账?
  • 计提印花税会计科目
  • 施工企业简易计税的依据
  • 试算不平衡的原因是什么
  • 企业所得税如何计算应纳税所得额
  • 代收代缴水电费如何开票
  • 以原材料投入资本
  • 连续三个月发烧怎么回事
  • 员工预支工资属于什么科目
  • 财务费用中的利息费用指什么
  • 主营业务收入包括哪些内容
  • sqlserver增删改查执行语句
  • 使用灭火器人要站在上风口还是下风口
  • 自我挖掘的才干
  • 如何修复win7系统文件损坏
  • fedora lts
  • linux shell awk 流程控制语句(if,for,while,do)详细介绍
  • popupblocker是什么
  • rpm软件安装命令
  • win 10设置提醒
  • win10开机蓝屏提示修复
  • css命名大全
  • cocos 2d x
  • unity3d常用代码总结
  • 微信小程序实现文件上传
  • margin使用
  • W3C Group的JavaScript1.8 新特性介绍
  • javascript零基础入门
  • python自定义min_self函数
  • python画足球
  • js代码测试工具
  • javascript的基础类型有哪些
  • Python编程中装饰器的使用示例解析
  • 苏宁易购的联系电话
  • 江苏盐在什么地方
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设