vue将表格导出为excel

一:在项目中需要安装2个依赖项,如下命令:

npm install --save file-saver xlsx

二:在vue文件中如下使用即可:

<template>
<div class="hello">
<h1>vue</h1>
<h2>{{msg}}</h2>
<p><button type="button" id="export-table" @click="exportFunc">下载excel文件</button></p>
<div id="out-table">
<table>
<thead>
<tr>
<td>ID</td>
<td>姓名</td>
<td>年龄</td>
</tr>
</thead>
<tbody>
<tr>
<td>111111</td>
<td>我是前端开发</td>
<td>今年29岁</td>
</tr>
</tbody>
</table>
</div>
</div>
</template> <script>
import FileSaver from 'file-saver';
import XLSX from 'xlsx';
console.log(FileSaver);
export default {
name: 'helloworld',
data () {
return {
msg: 'Welcome to Your Vue.js App'
};
},
methods: {
exportFunc: function(e) {
// 从表生成工作簿对象
var wb = XLSX.utils.table_to_book(document.getElementById('out-table'));
// 得到二进制字符串作为输出
var wbout = XLSX.write(wb, {
bookType: 'xlsx',
type: 'binary'
});
FileSaver.saveAs(new Blob([this.s2ab(wbout)], {
type: 'application/octet-stream'
}), 'a.xlsx');
},
s2ab: function(s) {
var cuf;
var i;
if (typeof ArrayBuffer !== 'undefined') {
cuf = new ArrayBuffer(s.length);
var view = new Uint8Array(cuf);
for (i = 0; i !== s.length; i++) {
view[i] = s.charCodeAt(i) & 0xFF;
}
return cuf;
} else {
cuf = new Array(s.length);
for (i = 0; i !== s.length; ++i) {
cuf[i] = s.charCodeAt(i) & oxFF;
}
return cuf;
}
}
},
components: {
FileSaver,
XLSX
}
};
</script>

git上源码

注意:table里面中的表头thead中不能使用th标签,否则的话,表头导入不出去到excel文件中,只能使用tr,td这样的。

vue将表格导出为excel的更多相关文章

  1. 纯JS 将table表格导出到excel

    html <div > <button type="button" onclick="getXlsFromTbl('tableExcel','myDiv ...

  2. 将HTML表格导出到EXCEL,兼容Firefox,支持中文

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 使用JavaScript把页面上的表格导出为Excel文件

    如果在页面上展示了一个数据表格,而用户想把这个表格导出为Excel文件,那么在要求不高的情况下,可以不通过服务器生成表格,而是直接利用JavaScript的Blob和Object URL特性将表格导出 ...

  4. 网站开发进阶(三十一)js如何将html表格导出为excel文件(后记)

    js如何将html表格导出为excel文件(后记) 前言 项目前期做了个导出Excel表格的功能,但是经过测试发现只有在IE上才可以正确实现,在Chrome等浏览器中无法实现导出效果.经过上网搜索,尝 ...

  5. 网站开发进阶(二十五)js如何将html表格导出为excel文件

    js如何将html表格导出为excel文件        赠人玫瑰,手留余香.若您感觉此篇博文对您有用,请花费2秒时间点个赞,您的鼓励是我不断前进的动力,共勉! jsp页面数据导出成excel的方法很 ...

  6. 表格导出到excel的样式消失该如何修改

    工作中遇到一需求,要将后台的表格导出到excel后的表格样式该如何修改呢? 其实表格导出首先需要了解两个插件:jquery.table2excel.js和tableExport.js 1.第一步,写一 ...

  7. JS 将页面上的表格导出为 Excel 文件

    如果在页面上展示了一个表格,想把这个表格导出为Excel文件,那么在要求不高的情况下,可以直接利用 JavaScript 的 Blob 和 Object URL 特性将表格导出.不过,这就是利用了 E ...

  8. 将表格导出为excel

    <table id="tableExcel" border="1"> <tr> <th>零</th> <t ...

  9. html页面表格导出到excel总结

    转载:http://www.cnblogs.com/liuguanghai/archive/2012/12/31/2840262.html <table id="tableExcel& ...

随机推荐

  1. 【Java】XML文件的解析

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  2. Java静态成员与实例成员

    Java静态成员与实例成员 类是一种类型,类中定义的所有成员都归此的对象所有,这些成员成为实例成员:而某些成员想要被所有类的所有对象共享,此时的成员不属于某个对象,而是属于整个类,这些成员成为静态成员 ...

  3. 使用Maven搭建JFinal环境

    使用Maven搭建JFinal环境 工具:IDEA 2017 JFinal版本:3.4 一.Maven项目创建 选择maven模板进行创建 填写GroupId和ArtifactId 一路Next即可 ...

  4. 【Mysql】mysql乐观锁总结和实践

    乐观锁介绍: 乐观锁( Optimistic Locking ) 相对悲观锁而言,乐观锁假设认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突 ...

  5. border-sizing属性详解和应用

    box-sizing用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型.它有content-box.border-box和inherit三种取值.inherit指的是从父元素继承box-sizi ...

  6. callback.js

    function writeCode(callback){ console.log("i am waiting....") callback(); console.log(&quo ...

  7. js之模态对话框

    目标效果:点击页面按钮,显示模态对话框,在模态对话框里点击取消关闭模式对话框. 效果如下 实现代码如下: <!DOCTYPE html> <html lang="en&qu ...

  8. js keyup、keypress和keydown事件

    js keyup.keypress和keydown事件都是有关于键盘的事件 当一个按键被pressed 或released在每一个现代浏览器中,都可能有三种客户端事件. keydown event k ...

  9. 【代码笔记】Web-HTML-头部

    代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!--ti ...

  10. js 复制文本到粘贴板

    //html 在iOS Safari中,剪贴板API有一些限制(实际上是安全措施):   于安全原因,iOS Safari只允许容器中的document.execCommand('copy')文本co ...