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
相关推荐
Profile排查笔记23 分钟前
指纹浏览器环境异常排查:Fingerprint、Profile、Proxy、Session 和 Task Log 怎么看
前端·人工智能·后端·自动化
京韵养生记25 分钟前
【无标题】
java·服务器·前端
格子软件42 分钟前
2026年分布式GEO代理流量调度:源码级状态机防重挂实战
java·vue.js·人工智能·spring boot·分布式·vue
大气的小蜜蜂1 小时前
领域层的服务
java·前端·数据库
星栈1 小时前
LiveView 的 LiveComponent:比 React 组件更轻,但我一开始真的把它用错了
前端·前端框架·elixir
林希_Rachel_傻希希1 小时前
web性能优化之延迟加载图片和<inframe>
前端·javascript·面试
maxmaxma1 小时前
Konva 从入门到实践 - day1
前端
火星校尉2 小时前
一场数据基建与消费场景的跨界实验
java·前端·数据库·python·php
W是笔名2 小时前
python_let`s try it 6___BMI计算器
java·前端·python
risc1234562 小时前
Lucene80DocValuesConsumer 五种类型源码阅读顺序
java·服务器·前端