PC端导出xlsx文件列表

该代码段展示了如何在Vue应用中结合ElementUI的表格组件和file-saver、xlsx库来实现数据下载为Excel文件。首先,导入必要的模块,然后在查询方法中加载数据并显示在表格中。当用户触发下载时,选择表格的DOM节点,将其转换为Excel格式,并使用FileSaver保存为.xlsx文件。
摘要由CSDN通过智能技术生成
  1. 下载并引入
import FileSaver from 'file-saver'
import xlsx from 'xlsx'
  1. 使用Element的table表格下载
        queryDetails(obj) {
            this.alllod = this.$loading({  // 全屏loading
                lock: true,
                text: '数据较多,请耐心等待!',
                spinner: 'el-icon-loading',
                background: 'rgba(0, 0, 0, 0.7)'
            });
            this.loading = true
            queryxfyh({
                pageNum: '',
                pageSize: '',
                dc: '2',
                ...obj
            }).then(res => {
                if (res.returnCode == 1) {
                    this.loading = false
                    this.tableData1 = res.returnData
                } else {
                    this.loading = false
                    this.$message({
                        type: "error",
                        center: true,
                        message: res.returnMsg,
                    });
                }
            }).then(() => {
                this.loading = false
                this.getHttpList()
            })
        },
        getHttpList() {
            let xlsxParam = { raw: true }   // 导出内容只做解析,不转换格式,可以解决导出数字过长时的科学计算
            let et = xlsx.utils.table_to_book(document.querySelector('#mxmytable'), xlsxParam); //此处传入table的DOM节点
            let etout = xlsx.write(et, {
                bookType: 'xlsx',
                bookSST: true,
                type: 'array'
            })
            try {
                FileSaver.saveAs(new Blob([etout], {
                    type: 'application/octet-stream'
                }), '下载文件名.xlsx');   //trade-publish.xlsx 为导出的文件名
                this.dialogTableVisible = false
                this.alllod.close();
            } catch (e) {
                console.log(e, etout);
            }
            return etout;

        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Vue中使用文件导出xlsx文件,你可以按照以下步骤进行操作: 1. 首先,你需要安装xlsx和file-saver这两个依赖包。你可以使用以下命令进行安装: ``` npm i -S xlsx npm i -S file-saver ``` 2. 在你的Vue组件中,你需要引入XLSX和FileSaver库,并且定义一个方法来处理导出操作。你可以按照以下代码示例进行编写: ``` import * as XLSX from 'xlsx'; import FileSaver from 'file-saver'; export default { methods: { exportToExcel() { const wb = XLSX.utils.table_to_book(document.querySelector("#yourTableId")); const wbout = XLSX.write(wb, { bookType: "xlsx", bookSST: true, type: "array" }); try { FileSaver.saveAs( new Blob([wbout], {type: "application/octet-stream"}), "filename.xlsx" ); } catch (e) { console.log(e, wbout); } } } }; ``` 在上面的代码中,你需要将"#yourTableId"替换成你要导出的表格的id,"filename.xlsx"替换成你想要导出文件名。 3. 在你的模板中,你可以添加一个按钮或者其他触发导出的元素,并且绑定导出方法。例如: ``` <button @click="exportToExcel">导出Excel</button> ``` 这样,当用户点击导出Excel按钮时,Vue组件会将表格转换为工作簿对象,并将其写入到文件流中,最后保存为xlsx文件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [vue使用xlsxxlsx-style和fileSaver导出excel表格](https://blog.csdn.net/m0_66970189/article/details/126886508)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [vue 前端导出xlsx文件](https://blog.csdn.net/qq_35350009/article/details/125967727)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值