方法一、vue+js-xlsx

1.vue项目内安装两个依赖:xlsx、file-saver
 npm install xlsx --save
 npm install file-saver --save
2.组件中引入
import FileSaver from 'file-saver'
import XLSX from 'xlsx'
3.组件代码

定义一个按钮来触发导出事件;
使用elementUI的表格格式,<el-table>要定义一个id:table-content;
写两个方法实现导出功能 exportToExcel()、printContent())

<template><el-button @click="exportToExcel">导出Excel</el-button><el-table  :data="tableData3"  style="width: 100%" id="table-content"><el-table-column  prop="date"  label="日期"  width="150"></el-table-column><el-table-column label="配送信息"><el-table-column  prop="name"  label="姓名"  width="120"></el-table-column><el-table-column label="地址"><el-table-column  prop="province"  label="省份"  width="120"></el-table-column><el-table-column  prop="city"  label="市区"  width="120"></el-table-column><el-table-column  prop="address"  label="地址"  width="300"></el-table-column><el-table-column  prop="zip" label="邮编"  width="120"></el-table-column></el-table-column></el-table-column></el-table>
</template><script>
import FileSaver from 'file-saver'
import XLSX from 'xlsx'export default {data() {return {tableData3: [{date: '2016-05-03',name: '王小虎',province: '上海',city: '普陀区',address: '上海市普陀区金沙江路 1518 弄',zip: 200333}, {date: '2016-05-02',name: '王小虎',province: '上海',city: '普陀区',address: '上海市普陀区金沙江路 1518 弄',zip: 200333}]}},methods:{
exportToExcel () {let et = XLSX.utils.table_to_book(document.getElementById('table-content')); //document.getElementById('xxxx'):XXX此处传入table的DOM节点,即el-table的id名称let etout = XLSX.write(et, {bookType: 'xlsx', bookSST: true, type: 'array' });try {FileSaver.saveAs(new Blob([etout], { type: 'application/octet-stream' }), 'table.xlsx');   //XXX.xlsx 为导出的文件名} catch (e) {console.log(e, etout) ;}return etout;
},
//打印页面内容
printContent(){let wpt = document.getElementById('table-content');let newContent = wpt.innerHTML;let oldContent = document.body.innerHTML;document.body.innerHTML = newContent;window.print(); //打印方法window.localtion.reload();document.body.innerHTML = oldContent;
}
}}
</script><script>
import FileSaver from 'file-saver'
import XLSX from 'xlsx'export default {data() {return {tableData3: [{date: '2016-05-03',name: '王小虎',province: '上海',city: '普陀区',address: '上海市普陀区金沙江路 1518 弄',zip: 200333}, {date: '2016-05-02',name: '王小虎',province: '上海',city: '普陀区',address: '上海市普陀区金沙江路 1518 弄',zip: 200333}]}},methods:{
exportToExcel () {let et = XLSX.utils.table_to_book(document.getElementById('table-content')); //document.getElementById('xxxx'):XXX此处传入table的DOM节点,即el-table的id名称let etout = XLSX.write(et, {bookType: 'xlsx', bookSST: true, type: 'array' });try {FileSaver.saveAs(new Blob([etout], { type: 'application/octet-stream' }), 'table.xlsx');   //XXX.xlsx 为导出的文件名} catch (e) {console.log(e, etout) ;}return etout;
},
//打印页面内容
printContent(){let wpt = document.getElementById('table-content');let newContent = wpt.innerHTML;let oldContent = document.body.innerHTML;document.body.innerHTML = newContent;window.print(); //打印方法window.localtion.reload();document.body.innerHTML = oldContent;
}
}}
</script>

·效果:样式普通,若增加样式需要手写样式文件及插件,导入引用,后期修改麻烦。

方法二、node.js+ejsExcel

1.git下载插件代码

https://github.com/sail-sail/ejsExcel
http://git.oschina.net/ccteams/ejsExcel

2.安装模块依赖

npm install ejsexcel

3.执行 test/test.bat

·效果:先做好excel模板,然后往模板中填充数据,生成后下载。后期模板修改比较方便,直接修改模板excel就可以。

附上该模块作者信息(作者人很nice,有问题在Q群中提问,都会很及时解答):

Auto: Sail 黄智勇

QQ:151263555

Q群:470988427

Email:151263555@qq.com

CSDN原文:https://blog.csdn.net/f1gh151263/article/details/51740705

segmentfault社区详细文档:https://segmentfault.com/a/1190000012992783

方法三、基于jQuery的table2excel

1.下载相关插件

jquery-3.3.1.min.js、jquery.table2excel.js

2.HTML引用js文件(D2Admin框架中的引用插件路径:..\Marketregulation\public\index.html)

并将文件放到对应路径下

<script src="./../jquery-3.3.1.min.js"></script>

<script src="./../jquery.table2excel.js"></script>

3.组件内:

  • 定义一个按钮来触发导出事件;
  • 使用elementUI的表格格式,<el-table>要定义一个id:table-content;
  • 在js中写exportToExcel()方法实现导出功能
methods:{
exportToExcel(){
$("#tblExport").table2excel({
exclude : ".noExl", //过滤位置的 css 类名
filename : "导出excel表-" + new Date().getTime() + ".xls" //文件名称
});
}
}

4.若想修改导出的excel样式设置,直接修改jquery.table2excel.js脚本文件即可

找到脚本的mid: 加入样式代码'<style type="text/css"> ... </style>'

node.js/VUE项目中导出excel表格的多种实现方法(D2admin适用)相关推荐

  1. 在VUE项目中导出excel——简单使用xlsx

    在大量的项目开发和使用过程中,我们经常会遇到需要将某些数据导出为excel的操作,这里介绍一个很简单的导出方案--xlsx... 插件安装 网络好就直接使用 npm install xlsx -S 网 ...

  2. vue中导出Excel表格

    vue中导出Excel表格 项目中我们可能会碰到导出Excel文件的需求,一般后台管理系统中居多,将table中展示的数据导出保存到本地.当然我们也可以通过一些处理来修改要导出的数据格式,具体需求具体 ...

  3. Node.js:项目中的 package.json 格式

    1. node.js 项目包下的 package.json : 实例: {"name" : "chatroooms","version" : ...

  4. 计算机表格增加,电脑中给Excel表格添加水印效果的方法

    相信不少朋友在日常办公中,都会使用Excel软件,它的功能十分强大,能够帮着我们很好地完成数据统计工作.那么,excel打印过程中需要设置水印的话怎么做呢?这里,系统城小编给大家分享一下电脑中设置ex ...

  5. vue 微信公众号支付接口_总结vue项目中使用微信公众号支付的方法

    本篇文章给大家带来的内容是总结vue项目中使用微信公众号支付的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 微信公众号支付 1. 使用jssdk调用微信支付,具体查看开发文档 ...

  6. vue项目前端导出xlsx表格带边框

    最近项目中要求不再通过发送请求导出excel表格了,于是在网上找了找方法,在这记录一下方便以后查阅 一.首先先在项目中安装这几个包 npm install xlsx --save npm instal ...

  7. Extjs 从grid中导出Excel表格。后台为C#(绝对好用)(按照自己的需求修改版本)...

    最近生成Excel表格,稍微得到一点新的体会,特此更新自己开发时候的版本. 开发工具:VS2005 数据库:oracle10.1 浏览器:firefox3.5.9 第一步,web层aspx文件 需要载 ...

  8. VUE纯前端导出excel表格功能《转载》

    插件:使用vue-json-excel插件实现Vue纯前端导出简单的Excel表格功能. 使用方法 1. 安装依赖 npm install vue-json-excel 2. 引入组件 a. 全局引入 ...

  9. ag-grid-angular 中导出Excel表格 及其配置

    ag-grid-angular 中导出Excel表 及其配置 api 常用params 详解 自定义页眉和页脚 定义样式 样式参数详解 api exportDataAsExcel(params) 常用 ...

最新文章

  1. MVC中,视图的Layout使用
  2. 【Python-ML】探索式数据分析EDA(Exploratory Data Analysis)
  3. android jdk环境的配置
  4. 解决IE6下,给图片加上line-height属性不起作用的方法
  5. 【渝粤题库】陕西师范大学180208 产品管理 作业(专升本)
  6. 均值滤波计算_从零学美颜算法保边滤波
  7. 学习笔记 10.28
  8. HDU 1394 Minimum Inversion Number(线段树求逆序对)
  9. java ffmpeg amr转wav_FFmpeg转音频格式为wav
  10. 最全面的PLC学习网站
  11. 4k电视测试软件64,2017年四款看4k视频软件推荐,智能电视必备!
  12. csp是什么比赛_有关CSPJ/S比赛问题
  13. Boardcast03
  14. 数据库系统概论练习3
  15. MacOS安装brew教程从入门到入土
  16. echarty轴自定义显示不全,ECharts图表X轴或者Y轴单位内容显示不全
  17. “地表最贵iPhone”到货,iPhone XS 系列手机等你来测!
  18. egou 怎么实现订单跟踪的[伤心,发了4天没有一个回复]??
  19. [ZT]系统学习Linux的11点建议
  20. Stack Overflow Developer Survey 2016 Results(2016stack overflow 开发者调查报告)

热门文章

  1. Java中char,short,int,long占几个字节和多少位
  2. ie 与 ff 区别
  3. 2021年ACM竞赛班训练(六)题解
  4. 简单、好用的性能测试工具推荐
  5. matlab学习笔记11_2高维数组操作 squeeze,ind2sub, sub2ind
  6. 更换服务器 百度抓取显示有跳转,关于百度抓取诊断有跳转的问题!求各位SEO高手帮帮我!(悬赏1元) - 搜外SEO问答...
  7. C语言递归函数例子有5个小孩,第一个比第二个大2岁 第二个比第三个大2岁 以此类推 第五个10岁求第一个年纪
  8. 《扬帆优配》猪肉概念股拉升走高,新五丰一度涨停
  9. 混沌数学之Kent模型
  10. 全国行政区划数据大放送——包含邮政编码-电话区号-简拼-区划路径