VUE导出Excel

安装依赖

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

下载js(Blob.js、Export2Excel.js)

Export2Excel.js :https://download.csdn.net/download/m0_37549178/19871407
Blob.js : https://download.csdn.net/download/m0_37549178/19871334

开敲代码

//按钮引方法略
methods:{
//导出
	async exportExcel() {
	//1.我这需要现请求数据回来,你们不用就直接2
	  const { data: res } = await this.$http.post('export/', this.form)
	  this.exportList = res.orderList
	  if (this.exportList != null && this.exportList != '') {
	     //2.
	     require.ensure([], () => {
	     //引入Export2Excel,改成你自己的文件位置哈
	      const {export_json_to_excel} = require('../assets/js/Export2Excel')
	       //excel表头
	       let tableHeader = [
	         '交货单号',
	         '……',
	         '……'
	       ]
	       //表头对应的数据
	       let filterVal = [
	         'orderid',
	         '……',
	         '……'
	       ]
	       //需要对查到的数据进行处理,就如下代码中部分
	       //不需要就直接 let list = this.exportList 
	       // this.exportList 为选中的要导出的数据,用filterTableData方法先处理一下数据格式(要进行深度拷贝,以免过滤的时候,影响页面上展示的数据),再存到list
	       let list = this.filterTableData(JSON.parse(JSON.stringify(this.exportList ))) 
	       //处理数据
	       let data = this.formatJson(filterVal, list)
	       export_json_to_excel(tableHeader, data, "订单统计") //表头,数据,表名
	     })
     } else {
        this.$message.error('暂未查询出数据')
      }
	},
 	formatJson(filterVal, Data) {
   		return Data.map((v) => filterVal.map((j) => v[j]))
    },
 	filterTableData(data) {
	    data.forEach((item) => {
	      // 将地市拼接在一起
	      item.carkind == '1' ? (item.carkind = '专车') : (item.carkind = '拼车')
	    })
	    return data
    },
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗十月橘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值