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>
相关推荐
LIUAWEIO4 小时前
vue里面下载配置使用zepto vue中怎样使用zepto
javascript·vue.js·es6·zepto
lantian4 小时前
TypeScript 三斜线指令完全指南:从入门到理解为什么不再需要它
前端·javascript·vue.js
用户938515635074 小时前
从"用栈实现队列"说起:深入理解 JavaScript 原型式面向对象
javascript
ZengLiangYi4 小时前
AI 编程工具的数据格式为什么不能统一
javascript·后端·架构
陈_杨4 小时前
鸿蒙APP开发-带你走进旧物集的时间线与收藏管理
前端·javascript
尼斯湖皮皮怪4 小时前
iceCoder双模详解
javascript
小雨下雨的雨4 小时前
月相分析工具鸿蒙PC Electron框架技术实现详解
前端·javascript·华为·electron
布依前端4 小时前
基于 Vue 3 的 Tiptap 富文本编辑器实践:tiptap-editor-vue3 项目介绍
前端·javascript·vue.js
奥利奥夹心脆芙5 小时前
OTel / Logstash / Fluentd 全维对比,及统一日志与指标管道的 AWS ECS 落地
javascript
浮游本尊5 小时前
前端vue转后端java学习路径
java·前端·vue.js