vue使用element ui---Table 表格导出Excel功能

1.html页面

<el-button type="addBtn sendBatchBtn" @click="sendBatchFun" @selection-change="handleSelectionChange">发放</el-button>

2.dom

data () {
	return {
		multipleSelection: [],
		select_order_number: '',
		currentTime: '', // 获取当前时间
	}
}

2.1获取当前时间

//获取当前时间
 getTimeCurrent () {
   var now=new Date();
   var year=now.getFullYear();
   var month=now.getMonth()+1;//月份少1
   if(month<10){
     month="0"+month;
   }
   var date=now.getDate();
   if(date<10){
     date="0"+date;
   }
   // var week = "星期" + "日一二三四五六".split(/(?!\b)/)[now.getDay()];
   var hours=now.getHours();
   if(hours<10){
     hours="0"+hours;
   }
   var minutes=now.getMinutes();
   if(minutes<10){
     minutes="0"+minutes;
   }
   var seconds=now.getSeconds();
   if(seconds<10){
     seconds="0"+seconds;
   }
   this.currentTime = year+"-"+month+"-"+date+"  "+hours+":"+minutes+":"+seconds;
 },

2.2导出dom

excleTableFun () {
  require.ensure([], () => {
    const {
      export_json_to_excel
    } = require('@/vendor/Export2Excel'); //Export2Excel的地址,与配置路径相对应
    const tHeader = ['序号', '激活码', '生成时间']; //表头
    const filterVal = ['id', 'code', 'create_time']; //userList里面的对应的全部数据
    const list = this.multipleSelection; //将导出数据赋值   -----单选或者全选选中的,参考我上一篇的全选单选功能
    const data = this.formatJson(filterVal, list); //参数过滤方法
    export_json_to_excel(tHeader, data, '发放激活码列表' + this.currentTime); //表名,方法封装在在Export2Excel中
  })
},
formatJson(filterVal, jsonData) {
	return jsonData.map(v => filterVal.map(j => v[j]))
},

2.3全选、单选

//全选,单选
 handleSelectionChange(rows) {
   this.multipleSelection = rows;
   this.select_order_number = this.multipleSelection.length;

   this.selectArr = [];
   if (rows) {
     rows.forEach(row => {
       if (row) {
         this.selectArr.push(row.id);
       }
     });
   }
 },

3.说明

this.multipleSelection; 为单选或者全选选中的行数据,参考我上一篇的全选单选功能

4.效果图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值