关于前端:Vue中将json数据导出为Excel表格

4次阅读

共计 1146 个字符,预计需要花费 3 分钟才能阅读完成。

能够将 echarts 图表数据,table 表格等 json 格局数据导出

一、装置依赖
npm install file-saver --save
npm install xlsx --save
npm install script-loader --save-dev
二、下载两个所须要的 js 文件 Blob.js 和 Export2Excel.js
 链接: https://pan.baidu.com/s/18Pafeozsaca0ylTVrZQlzg?pwd=t3pc 提取码: t3pc 
三、src 目录下新建 vendor 文件夹,将 Blob.js 和 Export2Excel.js 放进去

四、更改 webpack.base.conf.js 配置
 在 resolve 的 alias:'vendor': path.resolve(__dirname, '../src/vendor')
五、在.vue 文件中

script 代码

data(){
  return{
    list:[
        {
          name:'韩版设计时尚风衣大',
          number:'MPM00112',
          salePrice:'¥999.00',
          stocknums:3423,
          salesnums:3423,
          sharenums:3423,
      },
      {
          name:'韩版设计时尚风衣大',
          number:'MPM00112',
          salePrice:'¥999.00',
          stocknums:3423,
          salesnums:3423,
          sharenums:3423,
      },
    ]
  }

methods:{formatJson(filterVal, jsonData) {return jsonData.map(v => filterVal.map(j => v[j]))
      },
    export2Excel() {require.ensure([], () => {const { export_json_to_excel} = require('../../../vendor/Export2Excel');
          const tHeader = ['商品名称','商品货号','售价','库存','销量','分享',];
          const filterVal = ['name', 'number', 'salePrice', 'stocknums', 'salesnums', 'sharenums',];
          const list = this.goodsItems;
          const data = this.formatJson(filterVal, list);
          export_json_to_excel(tHeader, data, '商品治理列表');
        })
      }
}

template 代码

<button @click="export2Excel"> 导出 </button>
正文完
 0