vue前端下載Excel文檔配置流程

項目中不可避免出現需要下載的情況,大公司內部開發的工具,多數具有報表的導出功能,所以如何實現呢?

需要的相關插件和準備工作:

1,從npm中下載3個插件:

npm install file-saver xlsx>

2,另外需要再去找到兩個js插件放到項目文件夾:

Blob.js和Export2Excel.js兩個js

本例放到:assets下新建js文件夾內

3,在Export2Excel.js源碼內頂部引入:

require('script-loader!file-saver');

require('script-loader!../../assets/js/Blob');

require('script-loader!xlsx/dist/xlsx.core.min');

4,在需要使用下載的地方引入:

import {export_json_to_excel} from './../assets/js/Export2Excel'

注意:Export2Excel導出方式為default ,需要以{}導出變量讀取

5,使用:

表格數據如下:

data(){

return{

tableData:[{index:"123",provinces:"123", orderMoney:"123", incomeMoney:"123",}]

}

},

methods:{

exportToExcel() {

//excel數據導出

//表格標題

const tHeader = ['序號','支出', '收入', '收益總額'];

//表格數據字段

const filterVal = ['index','provinces', 'orderMoney', 'incomeMoney'];

//表格整個數據組

const list = this.tableData;

const data = this.formatJson(filterVal, list);

export_json_to_excel(tHeader, data, '列表');

},

formatJson(filterVal, jsonData) {

return jsonData.map(v => filterVal.map(j => v[j]))

}

}

多數項目是數據加圖表結合的,目前暫時實現圖表的下載,圖表的寫入有待研究,如果有比較熟練度小夥伴們可以一起交流啊!


分享到:


相關文章: