vue 实现word文档页面内预览docx-preview 和 vue-office

1.先下载引入

bash 复制代码
npm i docx-preview --save
import { renderAsync } from 'docx-preview';

2.使用

bash 复制代码
fetch(url) .then((response) => {
   let docData = response.blob(); //将文件转换成bolb形式
    //选择要渲染的元素
    let childRef = document.getElementsByClassName("childRef");
    //用docx-preview渲染
    renderAsync(docData, childRef[0]).then((res) => {});
  
  })

url就是文档地址,可以是线上也可以是本地

bash 复制代码
 <div  class="childRef" ></div>

给个空间就可以了

3.踩坑

有时候有些文档预览的时候,一些数字不展示,查找了半天才发现是文档内有图形绘制的地方,然后影响了,删掉就可以了

比如说,下划线一般我们都是文字添加下划线,但是如果用形状画一个黑线,看起来也是个下划线,但是这样会解析不出来

一般大家也不会用这些话形状,所以就可以忽略

4.vue-office

这个插件是在docx-preview基础上进行了一些优化,git地址和使用方式都可以看文档
添加链接描述

我想说的是,在你安装过docx-preview之后,再安装vue-office会启动冲突

删掉node-modules重新下载就行了,最好吧package里的docx-preview也删掉,然后重新下载

bash 复制代码
npm install @vue-office/docx vue-demi
相关推荐
apollo_qwe几秒前
前端缓存深度解析:从基础到进阶的实现方式与实践指南
前端
学习CS的小白8 分钟前
跨域问题详解
vue.js·后端
周星星日记9 分钟前
vue中hash模式和history模式的区别
前端·面试
Light609 分钟前
Vue 高阶优化术:v-bind 与 v-on 的实战妙用与思维跃迁
前端·低代码·vue3·v-bind·组件封装·v-on·ai辅助开发
周星星日记9 分钟前
5.为什么vue中使用query可以保留参数
前端·vue.js
lebornjose9 分钟前
javascript - webgl中绑定(bind)缓冲区的逻辑是什么?
前端·webgl
+VX:Fegn089512 分钟前
计算机毕业设计|基于springboot + vue作业管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Tzarevich13 分钟前
现代前端开发工程化:从 Vite 到 Vue 3 多页面应用实战
vue.js·vite
瘦的可以下饭了14 分钟前
Day05- CSS 标准流、浮动、Flex布局
前端
前端无涯16 分钟前
React中setState后获取更新后值的完整解决方案
前端·react.js