Vue导出表格到Excel的实现及遇到的问题

本文详细介绍如何在Vue项目中实现数据导出为Excel的功能,包括安装必要依赖、下载并配置Blob.js和Export2Excel.js文件,以及在项目中具体使用的方法。通过实例代码展示如何设置按钮触发导出,处理数据格式,最终生成Excel文件。
1.安装依赖
npm install -S file-saver xlsx
npm install -D script-loader
2.下载两个文件

Blob.js和 Export2Excel.js 。
新建src/vendor目录,将这两个文件放进去。

3.修改配置文件

在build/webpack.base.conf.js中resolve的alias中加入一行:
'vendor': path.resolve(__dirname, '../src/vendor'),
修改配置文件

4.使用
<button @click="handleDownload">导出</button>
methods:{
    handleDownload() {
        require.ensure([], () => {
            const {
                export_json_to_excel
            } = require('vendor/Export2Excel');
            const tHeader = ['序号', '文章标题', '作者', '阅读数', '发布时间'];
            const filterVal = ['id', 'title', 'author', 'views', 'display_time'];
            const list = [
                {id: 1, title: 2, author: 3, pageviews: 4, display_time: 5},
                {id: 6, title: 7, author: 8, pageviews: 9, display_time: 10},
                {id: 11, title: 12, author: 13, pageviews: 14, display_time: 15},
            ];
            const data = this.formatJson(filterVal, list);
            export_json_to_excel(tHeader, data, '列表excel');
        })
    },
    // 参数过滤
    formatJson(filterVal, jsonData) {
        return jsonData.map(v => filterVal.map(j => v[j]))
    },
  }
5.遇到的问题及解决方法

在第一次编译时报错:
报错信息
结束运行,执行语句npm install
执行结果
然后重新启动运行即可。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值