1.引入依赖
npm install html-docx-js -S
npm install file-saver -S
2.在src目录下,创建一个exportWord.js文件,在里面写一个方法(你也可以直接写到页面中去)
exportWord.js(直接复制)
import FileSaver from "file-saver";
import htmlDocx from "html-docx-js/dist/html-docx";
export function exportWord(htmlContent,name){
let content = `
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<div>
${htmlContent}
</div>
</body>
</html>`;
let wordYang = htmlDocx.asBlob(content);
FileSaver.saveAs(wordYang,name)
}
3.需要使用该功能的.vue页面引入
import { exportWord } from '@/excel/exportWord'
4.依据div的id来获取你写的数据样式,然后导出
5.方法详情(在methods里写,然后点击事件使用等都行,看注释)
daochuWord(){
let contentHtml = document.getElementById('abword').innerHTML;//获取这个div里面的数据
exportWord(contentHtml,'导出的单子')//调用引入的导出方法,传两个参数,一个是这个html内容,一个是导出文件名字
},
注意:看一下Word文档空白页的宽度,根据宽度对你的要打印导出的这个div进行设置等