el-tabe 配合 xlsx 导出 excel 文件

一、安装依赖

bash 复制代码
pnpm add element-plus
bash 复制代码
pnpm add xlsx

二、在 main.js 引入

javascript 复制代码
import { createApp } from "vue";

import ElementPlus from "element-plus";

import "element-plus/dist/index.css";

import App from "./App.vue";



const app = createApp(App);

app.use(ElementPlus);

app.mount("#app");

三、使用 xlsx 导出

javascript 复制代码
<template>

  <div>

    <el-button type="primary" @click="exportExcel">导出Excel</el-button>

    <el-table :data="tableData" border style="width: 100%">

      <el-table-column prop="name" label="姓名" width="180"></el-table-column>

      <el-table-column prop="age" label="年龄" width="180"></el-table-column>

      <el-table-column prop="gender" label="性别" width="180"></el-table-column>

    </el-table>

  </div>

</template>

<script setup>

  import { ref } from "vue";

  import XLSX from "xlsx";

  // 模拟表格数据,实际中可以是从接口获取等来源的数据

  const tableData = ref([

    { name: "张三", age: 25, gender: "男" },

    { name: "李四", age: 30, gender: "女" },

    { name: "王五", age: 28, gender: "男" },

  ]);

  const exportExcel = () => {

    const worksheet = XLSX.utils.json_to_sheet(tableData.value);

    const workbook = XLSX.utils.book_new();

    XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1");

    XLSX.writeFile(workbook, "人员信息表.xlsx");

  };

</script>

<style scoped></style>
相关推荐
翻滚吧键盘几秒前
{{ }}和v-on:click
前端·vue.js
上单带刀不带妹7 分钟前
手写 Vue 中虚拟 DOM 到真实 DOM 的完整过程
开发语言·前端·javascript·vue.js·前端框架
前端风云志9 分钟前
typescript结构化类型应用两例
javascript
gnip1 小时前
总结一期正则表达式
javascript·正则表达式
Q_970956391 小时前
java+vue+SpringBoo校园失物招领网站(程序+数据库+报告+部署教程+答辩指导)
java·数据库·vue.js
爱分享的程序员1 小时前
前端面试专栏-算法篇:18. 查找算法(二分查找、哈希查找)
前端·javascript·node.js
翻滚吧键盘2 小时前
vue 条件渲染(v-if v-else-if v-else v-show)
前端·javascript·vue.js
你这个年龄怎么睡得着的2 小时前
为什么 JavaScript 中 'str' 不是对象,却能调用方法?
前端·javascript·面试
南屿im2 小时前
JavaScript 手写实现防抖与节流:优化高频事件处理的利器
前端·javascript
西陵2 小时前
Nx带来极致的前端开发体验——借助CDD&TDD开发提效
前端·javascript·架构