Vue2.0---将页面中表格数据导出excel (详细)

时间:2021-06-14 14:47:04

 

这是教程

  项目中,后台数据生成的表格如何导出成excel?

  一、需要安装三个依赖:

             npm install -S file-saver xlsx

             npm install -D script-loader

 

  二、项目中新建一个文件夹:(vendor---名字任取)

    里面放置两个文件Blob.js 和 Export2Excel.js

    百度可下载。

  三、在.vue文件中
       写这两个方法:其中list是表格的内容
    export2Excel() {
      require.ensure([], () => {
        const { export_json_to_excel } = require('../../vendor/Export2Excel');
        const tHeader = ['序号', 'IMSI', 'MSISDN', '证件号码', '姓名']; //对应表格输出的title
        const filterVal = ['ID', 'imsi', 'msisdn', 'address', 'name']; // 对应表格输出的数据
        const list = this.tableData;
        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]))
    }

    

   四、按钮导出调用export2Excel方法

 

     注:如果webpack报解析错误:

      在build----webpack.base.conf.js中resolve的alias加入 'vendor': path.resolve(__dirname, '../src/vendor'),
      即可解决
      alias是配置别名

      

     Blob.js和 Export2Excel.js文件:链接: https://pan.baidu.com/s/1eRFnegU 密码: 7ijr