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
相关推荐
触底反弹3 分钟前
Vue 实战:手把手教你实现 ChatGPT 同款打字机效果
前端·javascript·人工智能
BreezeJiang5 分钟前
Vue 3 流式输出实战:ReadableStream + DeepSeek API 实现打字机对话
前端
用户EasyAdminBlazor12 分钟前
EasyAdminBlazor 第十篇:数据导入导出——批量处理不再麻烦
前端·后端
饮茶三千13 分钟前
电子保函模板编辑器实战二:HTML→FTL 编译转换的设计与实现
前端·vue.js·设计模式
英勇无比的消炎药18 分钟前
表单筛选利器:TinyVue BaseSelect 基础选择器实战
vue.js
ricardo197318 分钟前
SSR / SSG 性能对比:Next.js 三种渲染模式实测数据
前端·面试
ikoala34 分钟前
Codex 小白入门:从安装到插件、MCP、Skills,一篇把配置讲明白
前端·javascript·后端
先吃饱再说1 小时前
从零理解 Vue 3:组件化、数据绑定与响应式完全指南
vue.js·前端框架
雪隐1 小时前
用Flutter做背单词APP-04一个人,2周,从零撸出一个背单词App
前端·人工智能·后端
OpenTiny社区1 小时前
Skill 设计:封装、评测、运营,一次讲透
前端·github