vue 使用xlsx导出功能(及其选择导出,条件导出,部分字段导出)

本文介绍了如何在Vue项目中利用xlsx插件实现数据导出功能,包括选择性导出、条件导出和部分字段导出,详细讲解了从下载插件到在main.js配置,再到vue组件中具体使用的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.下载xlsx插件

npm install --save xlsx

2.main.js中使用

import XLSX from 'xlsx'
Vue.prototype.XLSX = XLSX```

3.vue页面中使用
在这里插入图片描述

   <el-button type="success" @click="exportExcel" size="small" icon="el-icon-upload2">导出</el-button>
  exportExcel() {
                let list = [];
                if (this.selectRows.length>0){ //如图我选择了导出那几条数据则导出我需要导出的数据(this.selectRows表示我选中导出数据的数组)
                    list =this.selectRows  //选择导出部分代码
                    this.exportList(list);
                } else {//如果木有选择则导出全部数据
                    console.log(this.selectRows)
                    this.axios
                        .get("/sec/secVisitorRegister/list?isPage=false", {params: this.params})
                        .then(res => {
                            console.log(res.data.data);
                            list = res.data.data; //导出全部代码或条件查询出来的代码
                            this.exportList(list);
                        });
                }


            },
            exportList(list){
                let tableData = [
                    ['序号','姓名', '联系电话','来访时间', '同行人数',"单位或住址","来访目的","备注"]//导出表头
                ] // 表格表头
                list.forEach ((item,index)=> {
                    let rowData = []
                    //导出内容的字段
                    rowData = [
                        index+1,
                        item.name,
                        item.phone,
                        item.registerTime,
                        item.numberPeople,
                        item.address,
                        item.purpose,
                        item.memo,
                    ]
                    tableData.push(rowData)
                })
                let ws = this.XLSX.utils.aoa_to_sheet(tableData)
                let wb = this.XLSX.utils.book_new()
                this.XLSX.utils.book_append_sheet(wb, ws, '来访记录') // 工作簿名称
                this.XLSX.writeFile(wb, '来访记录.xlsx') // 保存的文件名
            },

导出数据图例
在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值