vue中通过Export2Excel将table导成excel

1.安装依赖包

npm install -S file-saver
npm install -S xlsx
npm install -D script-loader

2.在项目中新建文件夹vendor(名字可以随便取):

把Blob.js和 Export2Excel.js这两个文件夹放到新建的文件夹内资源下载

3.代码

/**
*@listData     表格数据(从数据库中查出所有数据)
*@filterVal    需要导出的列名
*/
exportExcel(listData,filterVal){
    this.downloadLoading = true
      import('@/vendor/Export2Excel').then(excel => {
        const tHeader = ['ID', '用户名', '邮箱', '头像地址']
        const filterVal = ['id', 'username', 'email', 'avatar']
        const data = this.formatJson(filterVal, listData)
        excel.export_json_to_excel({
          header: tHeader,
          data,
          filename: 'table-list'//文件名
        })
        this.downloadLoading = false
      })
}

// 数据转换
formatJson(filterVal, jsonData) {
   return jsonData.map(v => filterVal.map(j => {return v[j] }))
}

4.在页面中使用时如果因为路径报错或者提示这种错误的话
在这里插入图片描述
在webpack.base.conf.js 里面增加resolve下一行代码
‘vendor’: path.resolve(__dirname, ‘…/src/vendor’),//新增加一行
在这里插入图片描述

你可能感兴趣的:(vue)