当前位置: 首页 > news >正文

vue 使用vue-office预览word、excel,pdf同理

在此,我只使用了docx和excel, pdf我直接使用的iframe进行的展示就不作赘述了

//docx文档预览组件
npm install @vue-office/docx//excel文档预览组件
npm install @vue-office/excel//pdf文档预览组件
npm install @vue-office/pdf

如果是vue2.6版本或以下还需要额外安装 @vue/composition-api

npm install @vue/composition-api/
<template><div><inputid="file"ref="files"type="file"@change="changeHandle"multiple="multiple"/><!-- accept=".doc,.docx,.pdf,.ai,.psd,.xlsx,.xls" --><!-- <vue-office-docx :src="src" @rendered="renderingCompleted" /> --><vue-office-excelstyle="flex: 1; height: 0"v-show="src":src="src"@rendered="renderingCompleted"/></div>
</template><script>
//引入VueOfficeDocx组件
import VueOfficeDocx from "@vue-office/docx";
//引入相关样式
import '@vue-office/docx/lib/index.css'
import VueOfficeExcel from "@vue-office/excel";
import '@vue-office/excel/lib/index.css'
export default {data() {return {src: "",};},components: {VueOfficeDocx,VueOfficeExcel,},mounted() {//赋值文档路径 此目录可以是http地址,也可以是本地文件//   const src = ref("./src/assets/docx/test.docx");},methods: {// 获取文件 这里是使用的 vue3.0 语法changeHandle(event) {console.log(event.target.files[0]);const file = event.target.files[0];let fileReader = new FileReader();fileReader.readAsArrayBuffer(file);fileReader.onload = () => {this.src = fileReader.result;};// const blob = new Blob([file], { type: "application/pdf;charset=utf-8" });// const blob = new Blob([file], { type: file.type });// this.src = window.URL.createObjectURL(blob); //这里是通过blob拿到urlconsole.log("src--", this.src);},renderingCompleted() {console.log("渲染完成");},},
};
</script><style>
</style>

参考:
1、vue + vue-office 实现多种文件(docx、excel、pdf)的预览
2、vue 预览word、excel、pdf文档 vue-office(VueOfficeDocx、VueOfficeExcel、VueOfficePdf)
3、vue 实现 word/excel/ppt/pdf 等文件格式预览操作
4、npm官网解释vue-office

http://www.lryc.cn/news/212947.html

相关文章:

  • 【Spring Boot 源码学习】RedisAutoConfiguration 详解
  • Linux中如何进行粘贴复制
  • 多输入多输出 | Matlab实现k-means-LSTM(k均值聚类结合长短期记忆神经网络)多输入多输出组合预测
  • 学习笔记3——JVM基础知识
  • 图像处理:图片二值化学习,以及代码中如何实现
  • 如果你点击RabbitMQ Service - start了,但http://localhost:15672/#/还是访问不了,那么请看这篇博客!
  • Shell 脚本学习 day01
  • esp32 rust linux
  • 一文了解Elasticsearch
  • 一篇文章认识【性能测试】
  • linux环境mysql安装配置踩坑
  • 相关性网络图 | 热图中添加显著性
  • cocosCreator 之 微信小游戏授权设置和调用wxAPI获取用户信息
  • element ui el-table表格纵向横向滚动条去除并隐藏空白占位列
  • 防止python进程重复执行
  • LV.12 D13 C工程与寄存器封装 学习笔记
  • Java SE 学习笔记(十九)—— XML、设计模式
  • grafana InfluxDB returned error: error reading influxDB 400错误解决
  • 【LeetCode:150. 逆波兰表达式求值 | 栈】
  • 什么是神经网络,它的原理是啥?(2)
  • leetcode做题笔记206. 反转链表
  • 2023/10/31 JAVA学习
  • SurfaceFliger绘制流程
  • 系统架构设计师-第14章-云原生架构设计理论与实践-
  • conda 实践
  • 行业追踪,2023-10-31
  • springboot 配置多个Redis数据源详解
  • 【数据结构】排序算法总结
  • 作为20年老程序员,我如何使用GPT4来帮我写代码
  • 【机器学习合集】模型设计之残差网络 ->(个人学习记录笔记)