博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue项目导出EXCEL功能
阅读量:6093 次
发布时间:2019-06-20

本文共 1663 字,大约阅读时间需要 5 分钟。

因为一些原因导出EXCEL功能必须前端来做,所以就研究了一下,在网上也找了一些文章来看,有一些不完整,我做完了就记录下来,供大家参考:

1、首先先安装依赖:

npm install file-saver xlsx --savenpm install script-loader --save-dev

2、下载需要的两个js插件,Blob.js和 Export2Excel.js。这两个文件在别的文章里面有下载地址,很好找。在src/目录下新建一个vendor,将这两个文件放到里面。

3、修改webpack.base.conf.js配置:

      在resolve.alias下面加上:

'vendor': path.resolve(__dirname, '../src/vendor')

 '../src/vendor' 是vendor的所在位置。

4、配置好以后,开始写代码:

我用的模拟数据,

导出EXCEL

  

data () {
return {
tableData: [{
date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, {
date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, {
date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, {
date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }] } }

  

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 = ['date', 'name', 'address'] // 内容对应的参数名 const data = this.formatJson(filterVal, this.tableData) // this.tableData是内容json export_json_to_excel(tHeader, data, '导出') }) }

到这一步就可以在浏览器里面测试了,我在谷歌、火狐里面测的都没有问题,但是在IE就有问题了,报错了:

"Promise" 未定义,然后我又查找了些文章,知道要安装babel-polyfill。

5、安装babel-polyfill

npm install --save-dev babel-polyfill

在webpack.base.conf.js这个文件配置, 加入require("babel-polyfill"):

在main.js里面导入它,

然后重新运行npm run dev,在IE下测试就可以啦,但是低版本还是不支持的,我们对IE要求不是很高,这样就可以了。

 

转载于:https://www.cnblogs.com/liyingying/p/8580296.html

你可能感兴趣的文章
php 过滤html标签的函数
查看>>
css斜线
查看>>
2013年第44周三可惡的中國聯通
查看>>
mysql导数据库用到的语句
查看>>
跨库查询(OpenDataSource)与链接服务器(Linking Server)
查看>>
Redis实现分布式锁
查看>>
Linux原始套接字实现分析---转
查看>>
UIWindow 介绍:概述、作用、主要属性及方法
查看>>
RH的NFS配置--简单OK
查看>>
Transcation And Lock--SQL SERVER 事务隔离级别
查看>>
Programmer Competency Matrix--ref--http://sijinjoseph.com/programmer-competency-matrix/
查看>>
jQuery如何设置自增自减值
查看>>
2013年度最佳 jQuery 插件集合(1) - 前端编程 - IT工作生活这点事。Just Su
查看>>
ASP.NET MVC:模块化/插件式文章汇总
查看>>
使用 Vagrant 打造跨平台开发环境
查看>>
selenium - Headless Browser and scraping - solutions - Stack Overflow
查看>>
公司------【关于真诚】
查看>>
Windows phone 8 学习笔记(3) 通信
查看>>
重新想象 Windows 8 Store Apps (18) - 绘图: Shape, Path, Stroke, Brush
查看>>
Revit API找到风管穿过的墙(当前文档和链接文档)
查看>>