导出word文件 表格file-saver、html-docx-js-typescript

根据html代码转换为word文件

1、下载file-saver、html-docx-js-typescript

javascript 复制代码
npm install file-saver html-docx-js-typescript

2、

javascript 复制代码
<span @click="downloadWordWithHtmlString()">导出doc</span>
<div id="eltable" ref="eltable" style="display: none">
	<table
	 border="1"
     cellspacing="0"
     width="600"
     style="font-size: 12px; color: #000; text-align: center"
    >
    	<tr height="50">
        	<td>列1</td>
        	<td>列2</td>
        </tr>
        <tr height="50">
        	<td>1-1</td>
            <td>1-2</td>
        </tr>
        <tr height="50">
            <td>2-1</td>
            <td>2-2</td>
        </tr>
    </table>
</div>
import { saveAs } from 'file-saver'
import { asBlob } from 'html-docx-js-typescript'
downloadWordWithHtmlString() {
	// let eltable = this.$refs.eltable
    // let html = eltable.$el.innerHTML
    let html = document.getElementById('eltable').innerHTML
    let name = `${this.fieldName}-条件信息`
    let htmlString = `
    	<!DOCTYPE html>
        <html lang="en">
        <head>
        <meta charset="UTF-8">
        <title>Document</title>
        </head>
        <body>
        ${html}
        </body>
        </html>
    `
    asBlob(htmlString).then((data) => {
        saveAs(data, `${name}.doc`)
    })
}
相关推荐
一入程序无退路10 分钟前
vue中序号不能按排序显示
javascript·vue.js·elementui
hashiqimiya21 分钟前
vue项目的选择星级样式和axios依赖调用
前端·javascript·vue.js
不一样的少年_26 分钟前
老王请假、客户开喷、我救火:一场递归树的性能突围战
前端·javascript·性能优化
搬砖的阿wei29 分钟前
JavaScript 请求数据的四种方法:Ajax、jQuery 、Fetch和 Axios
javascript·ajax·axios·jquery
梵得儿SHI31 分钟前
Vue Router 进阶实战:嵌套路由 / 导航守卫 / 懒加载全解析(含性能优化 + 避坑指南)
前端·javascript·vue.js·嵌套路由与命名视图·实现复杂页面结构·子路由配置要点·全局/路由/组件三种守卫用法
C_心欲无痕10 小时前
vue3 - defineExpose暴露给父组件属性和方法
前端·javascript·vue.js·vue3
贺今宵11 小时前
安装better-sqlite3报错electron-vite
javascript·sql·sqlite·sqlite3
2501_9444460011 小时前
Flutter&OpenHarmony文件夹管理功能实现
android·javascript·flutter
gc_229911 小时前
学习C#调用OpenXml操作word文档的基本用法(14:学习文档编号定义类)
word·openxml·编号定义
颜酱14 小时前
滑动窗口详解:原理+分类+场景+模板+例题(视频贼清晰)
javascript