Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

vue table导出excel

作者:魔影杀戮   发布日期:2026-01-01   浏览:55

// 导入必要的库
import XLSX from 'xlsx';
import { saveAs } from 'file-saver';

// 方法:将 Vue Table 数据导出为 Excel 文件
export function exportTableToExcel(tableId, fileName) {
  // 获取表格元素
  const table = document.getElementById(tableId);

  // 将 HTML 表格转换为工作表对象
  const workbook = XLSX.utils.table_to_book(table, { sheet: "Sheet1" });

  // 将工作簿转换为二进制字符串
  const wbout = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });

  // 创建 Blob 对象
  const blob = new Blob([wbout], { type: 'application/octet-stream' });

  // 使用 file-saver 库保存文件
  saveAs(blob, `${fileName}.xlsx`);
}

// 示例调用
// 假设你有一个 id 为 'myTable' 的 <table> 元素,并希望将其导出为名为 'example' 的 Excel 文件
// exportTableToExcel('myTable', 'example');

解释说明:

  1. 导入库:我们使用了 xlsxfile-saver 两个库,分别用于处理 Excel 文件的生成和文件下载。
  2. 方法定义exportTableToExcel 函数接收两个参数:tableId(HTML 表格的 ID)和 fileName(导出的 Excel 文件名)。
  3. 获取表格元素:通过 document.getElementById 获取指定 ID 的表格元素。
  4. 转换为工作表对象:使用 XLSX.utils.table_to_book 将 HTML 表格转换为 Excel 工作簿对象。
  5. 生成二进制字符串:通过 XLSX.write 将工作簿对象转换为二进制字符串。
  6. 创建 Blob 对象:将二进制字符串封装为一个 Blob 对象。
  7. 保存文件:使用 file-saversaveAs 方法将 Blob 对象保存为指定名称的 Excel 文件。

你可以根据需要调整代码中的细节,例如表格的选择方式或文件名的生成逻辑。

上一篇:docker部署vue

下一篇:vue页面强制刷新

大家都在看

vue.js devtools用法

vue js for循环

highlight.js vue

vue.config.js 配置

vue.config.js 配置代理

vue.config.js configu

node.js vue

vue3 写法

vue3组件传值的方式

vue3 子路由

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站