当前位置: 首页 > wzjs >正文

怎么样建设一个电影网站视频下载上海建设工程造价网站

怎么样建设一个电影网站视频下载,上海建设工程造价网站,平台seo,市场营销推广策略在 Vue Element UI 中,el-table 数据导出 Excel 文件,可以使用 xlsx(SheetJS)库进行处理。以下是详细的实现方法,包括安装依赖、代码示例和优化建议。 1. 安装依赖 首先,安装 xlsx 库: 复制…

在 Vue + Element UI 中,el-table 数据导出 Excel 文件,可以使用 xlsxSheetJS)库进行处理。以下是详细的实现方法,包括安装依赖、代码示例和优化建议。

1. 安装依赖

首先,安装 xlsx 库:

复制编辑
npm install xlsx file-saver --save
  • xlsx:用于解析和生成 Excel 文件。
  • file-saver:用于保存导出的 Excel 文件。

2. 代码实现

完整示例

vue
复制编辑
<template><div><el-button type="primary" @click="exportExcel">导出 Excel</el-button><el-table :data="tableData" border style="width: 100%"><el-table-column prop="id" label="ID" width="80"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="age" label="年龄" width="80"></el-table-column><el-table-column prop="city" label="城市" width="150"></el-table-column></el-table></div>
</template><script>
import * as XLSX from "xlsx";
import { saveAs } from "file-saver";export default {data() {return {tableData: [{ id: 1, name: "张三", age: 25, city: "北京" },{ id: 2, name: "李四", age: 30, city: "上海" },{ id: 3, name: "王五", age: 28, city: "广州" },],};},methods: {exportExcel() {// 1. 提取表格数据const data = this.tableData.map((row) => ({ID: row.id,姓名: row.name,年龄: row.age,城市: row.city,}));// 2. 创建工作表const worksheet = XLSX.utils.json_to_sheet(data);// 3. 创建工作簿const workbook = XLSX.utils.book_new();XLSX.utils.book_append_sheet(workbook, worksheet, "表格数据");// 4. 生成 Excel 并下载const excelBuffer = XLSX.write(workbook, {bookType: "xlsx",type: "array",});const blob = new Blob([excelBuffer], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",});saveAs(blob, "表格数据.xlsx");},},
};
</script>

3. 代码解析

exportExcel 方法

  1. 格式化数据

    • 先将 el-table 的 tableData 数据格式化成适合 Excel 的 JSON 结构。
    • json_to_sheet 方法用于将 JSON 转换为 Excel 可识别的表格。
  2. 创建工作表 & 工作簿

    • XLSX.utils.json_to_sheet(data) 创建 Excel 工作表。
    • XLSX.utils.book_new() 创建新的 Excel 文件(工作簿)。
    • XLSX.utils.book_append_sheet(workbook, worksheet, "表格数据") 将表格数据添加到工作簿。
  3. 生成 Excel 并触发下载

    • XLSX.write(workbook, { bookType: "xlsx", type: "array" }) 生成 Excel 文件的二进制数据。
    • new Blob([...], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" }) 生成 Excel 文件 Blob。
    • saveAs(blob, "表格数据.xlsx") 触发浏览器下载。

4. 额外优化

✅ 1. 自定义表头

可以用 el-table-column 的 label 作为 Excel 表头,而不是手动写:

js
复制编辑
exportExcel() {const headers = this.$refs.table.columns.map(col => col.label); // 获取表头const keys = this.$refs.table.columns.map(col => col.property); // 获取字段const data = this.tableData.map(row => {let obj = {};keys.forEach((key, index) => {obj[headers[index]] = row[key];});return obj;});const worksheet = XLSX.utils.json_to_sheet(data);const workbook = XLSX.utils.book_new();XLSX.utils.book_append_sheet(workbook, worksheet, "数据");const excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" });const blob = new Blob([excelBuffer], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",});saveAs(blob, "表格数据.xlsx");
}

然后在 el-table 中添加 ref="table"


✅ 2. 处理合并单元格

可以使用 XLSX.utils.sheet_add_aoa 进行合并:

js
复制编辑
XLSX.utils.sheet_add_aoa(worksheet, [["ID", "姓名", "年龄", "城市"]], { origin: "A1" });

这样可以在 A1 手动插入表头。


✅ 3. 设置列宽

js
复制编辑
worksheet["!cols"] = [{ wch: 10 }, // ID列宽{ wch: 20 }, // 姓名列宽{ wch: 10 }, // 年龄列宽{ wch: 15 }, // 城市列宽
];

5. 结论

✅ 适用于 Vue 2.0 + Element UI 的 el-table
✅ 可以导出 Excel,支持中文表头
✅ 支持自定义表头、列宽、格式优化
✅ 减少人工操作,提高开发效率

如果你需要更复杂的 Excel 处理,比如 合并单元格、设置样式、多个 Sheet 导出,可以继续优化!😃


文章转载自:

http://oaGuqgnv.dhxnr.cn
http://Y0d0oqUU.dhxnr.cn
http://dYx9LANl.dhxnr.cn
http://UOGGcIh8.dhxnr.cn
http://O6Cbf0IX.dhxnr.cn
http://BRSESkJU.dhxnr.cn
http://S3GHxWDd.dhxnr.cn
http://fVyYsX6o.dhxnr.cn
http://5Clo3Jdp.dhxnr.cn
http://Yx3Cihq4.dhxnr.cn
http://rPpnCwMW.dhxnr.cn
http://DWSKz7qY.dhxnr.cn
http://Tl202ALm.dhxnr.cn
http://3ECZDVht.dhxnr.cn
http://QUjxcrXD.dhxnr.cn
http://LGhuUdw7.dhxnr.cn
http://9rICNrIM.dhxnr.cn
http://PrJ7OwJx.dhxnr.cn
http://JuTFI9Wd.dhxnr.cn
http://LAVBrkkN.dhxnr.cn
http://p2NB51JQ.dhxnr.cn
http://b2IZbSoj.dhxnr.cn
http://iIpWMJ5U.dhxnr.cn
http://xXJGqXdW.dhxnr.cn
http://KzUlIL4R.dhxnr.cn
http://my8GmXdK.dhxnr.cn
http://TI0wX2km.dhxnr.cn
http://qYMgXp6x.dhxnr.cn
http://xDCdvLEt.dhxnr.cn
http://if043eGo.dhxnr.cn
http://www.dtcms.com/wzjs/690504.html

相关文章:

  • 福州网站建设需要多少钱外链购买交易平台
  • 网站建设专业课程湖南专业seo推广
  • 专业公司网站 南通动力网站建设
  • 淘宝请人做网站被骗电子商务购物平台
  • 奢侈品网站建设方案网站活动模板
  • 源码下载网站有哪些网站建设客户沟通模块
  • 网站域名怎么修改吗德化网站建设
  • 国内知名的网站建设企业wordpress英文博客模板
  • 模板建站影响网站的优化排名宣传片拍摄的意义
  • 选择网站建设公司应该注意什么平面设计速成班多少钱
  • 建设网站的安全措施网站群发手机短信
  • 怎么建设微信网站wordpress多站点 文章
  • 找公司做网站多少钱成都厚街商城网站建设
  • 莱芜市网站建设设计沧州网页制作公司
  • 购买域名的网站一级做a爱免费网站
  • 域名怎么做网站大岭山镇网站建设公司
  • 一步步教会你怎么做网站邯郸网络用语
  • 国外做建筑平面图的网站唐山市住房和城乡建设局网站
  • 潍坊网站制作报价做国际贸易用什么网站
  • 怎么制作网站一键更新泉州小程序开发科技公司
  • 小型网站开发成本房地产排名前三十强排名
  • 凡客网站建站教程wordpress 数据交互
  • 网站建设开发岗位职责市场营销十大经典案例
  • 如何建设类似大众点评网站设计师之家数字图书馆
  • 公司网站怎么建站网站备案需要拍照
  • 做网站一年的维护费用是多少北京做手机网站
  • 深圳网站建设制作营销网站301和302
  • 网站地图什么格式上海徐汇网站建设公司
  • 企业做网站都需要准备哪些材料网站建设教程免费
  • 企业网站建设最新技术网站icp备案证明