Vue3——html-doc-js(html导出为word的js库)

一、下载

官方地址 html-doc-js - npm

javascript 复制代码
npm install  html-doc-js

二、使用方法

javascript 复制代码
// 使用页面中引入
import exportWord from 'html-doc-js'


// 配置项以及实现下载方法
const wrap = document.getElementById('test')const config = {
      document:document, //默认当前文档的document 导出内容是iframe内部时需要使用iframe的document(getElementById('#iframe').contentDocument),注意iframe同域
      addStyle:true, // 是否导出样式,默认为true,此操作会将所有样式转换成行内样式导出
      fileName:'测试', // 导出文件名(不需要后缀) 存在文件名则会直接下载 否则会仅在success中返回blob
      toImg: ["canvas", "mjx-math"], // 页面哪些部分需要转化成图片,例如echart图表之类
      success(blob,dom){} // 完成之后回调, blob及完整处理后dom
exportWord(wrap,config) 

三、解决公式转为图片后单行公式可能会出现图片和原本的字符串重复的问题

在 exportWord 方法执行时,将页面中mjx-assistive-mml 节点清除即可,如下图所示

javascript 复制代码
// 根据tagName清除编辑器不需要的内容
const clearMathTags = (targetInstance, tagName) => {
  let targetElement = document.querySelectorAll(tagName);
  if (targetElement && targetElement.length) {
    targetElement.forEach((element) => {
      element.remove();
    });
  }
};

四、解决下载后共识可能显示有误的问题

相关推荐
程序员大阳17 分钟前
副队长CSS教程(37)–transition 过渡
前端·css·transition·过渡
(Charon)20 分钟前
【C++面试】线程并发与异步:区别、实现原理及使用场景
开发语言·c++
ZoeLandia20 分钟前
TypeScript 01:类型注解与类型推断
前端·javascript·typescript
踩蚂蚁25 分钟前
从“打开灯光”看 KWS 多关键词语音控制是怎么工作的
前端
AIFQuant33 分钟前
Python A股实时行情API接入:沪深股票数据与WebSocket推送实战
开发语言·python·websocket·金融·a股行情
ppiero36 分钟前
AI 助手聊着聊着就失忆?先分清"上下文"和"记忆"(五步装长期记忆)
前端
打呵欠的猫41 分钟前
用 AI 做性能分析:一行命令找出拖慢页面的 5 个组件,优化后首屏快了 40%
前端·性能优化·ai编程
2302_8057710742 分钟前
Day23:POM设计模式(封装)
java·开发语言·设计模式
用户50800705462843 分钟前
芯飞云用了两个月,说说我的真实感受
前端
Amos_Web43 分钟前
Rspack 源码解析(二十一):Cacheable 与 Storage 如何持久化编译结果
前端·rust·前端框架