Vue.js学习笔记(4)
分享一段将 json数组数据以 csv格式导出的代码:
html:
<button class="btn btn-danger" @click='exportData'>导出</button>
js:
// 导出数据
exportData: function() {
let tableHeader = [{
colname: 'type',
coltext: '类型',
}, {
colname: 'name',
coltext: '商品名称',
}, {
colname: 'number',
coltext: '数量',
}, {
colname: 'price',
coltext: '单价',
}];
let tableBody = [{
type: '食品',
name: '旺旺雪饼',
number: '100箱',
price: '25元/袋'
}, {
type: '食品',
name: '双汇火腿',
number: '50箱',
price: '5元/根'
}, {
type: '食品',
name: '毛毛虫面包',
number: '10箱',
price: '3元/袋'
}, {
type: '食品',
name: '阿尔卑斯棒棒糖',
number: '10箱',
price: '0.5元/个'
}, {
type: '食品',
name: '蒙牛酸奶',
number: '20箱',
price: '12.9元/瓶'
}, {
type: '水果',
name: '香蕉',
number: '10斤',
price: '2.5元/斤'
}, {
type: '水果',
name: '葡萄',
number: '20斤',
price: '4元/斤'
}, {
type: '水果',
name: '榴莲',
number: '10斤',
price: '24元/斤'
}, {
type: '水果',
name: '李子',
number: '20斤',
price: '4元/斤'
}];
var csv = '\ufeff';
var keys = [];
tableHeader.forEach(function(item) {
csv += '"' + item.coltext + '",';
keys.push(item.colname);
});
csv = csv.replace(/\,$/, '\n');
tableBody.forEach(function(item) {
var _item = {};
keys.forEach(function(key) {
csv += '"' + item[key] + '",';
});
csv = csv.replace(/\,$/, '\n');
});
csv = csv.replace(/"null"/g, '""');
var blob = new Blob([csv], {
type: 'text/csv,charset=UTF-8'
});
var csvUrl = window.URL.createObjectURL(blob);
var a = document.createElement('a');
var now = new Date(); function to2(num) {
return num > ? num : '' + num;
}
a.download = '进货信息导出' + now.getFullYear() + to2((now.getMonth() + )) + to2(now.getDate()) + to2(now.getHours()) + to2(now.getMinutes()) + to2(now.getSeconds()) + '.csv';
a.href = csvUrl;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
Vue.js学习笔记(4)的更多相关文章
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- vue.js 学习笔记3——TypeScript
目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...
- Vue.js学习笔记:在元素 和 template 中使用 v-if 指令
f 指令 语法比较简单,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " ...
- Vue.js——学习笔记(一)
Vue-自学笔记 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅 ...
- Vue.js 学习笔记之二:数据驱动开发
在 Vue.js 框架中,与 HTML 页面元素的交互方式没有像原生 JavaScript 接口那么直接,它是通过先在 HTML 元素标签中嵌入一系列类似于普通标签属性的 Vue 指令属性来绑定数据, ...
- Vue.js 学习笔记之三:与服务器的数据交互
显而易见的,之前的02_toDoList存在着一个很致命的缺陷.那就是它的数据只存在于浏览器端,一但用户关闭或重新载入页面,他之前加入到程序中的数据就会全部丢失,一切又恢复到程序的初始状态.要想解决这 ...
- Vue.js 学习笔记之四:Vue 组件基础
到目前为止,这个系列的笔记所展示的都是一些极为简单的单页面 Web 应用程序,并且页面上通常只有几个简单的交互元素.但在实际生产环境中,Web 应用程序的用户界面往往是由多个复杂的页面共同组成的.这时 ...
- Vue.js 学习笔记之五:编译 vue 组件
正如上一篇笔记中所说,直接使用 ES6 标准提供的模块规范来编写 Vue 组件在很多情况下可能并不是最佳实践.主要原因有两个,首先是市面上还有许多并没有对 ES6 标准提供完全支持的 Web 浏览器, ...
- Vue.js——学习笔记
Vue-自学笔记 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅 ...
- Vue.js 学习笔记 一
本文的Demo和源代码已放到GitHub,如果您觉得本篇内容不错,请点个赞,或在GitHub上加个星星! https://github.com/zwl-jasmine95/Vue_test 以下所有知 ...
随机推荐
- T-SQL Recipes之Common Function
在我们写SQL的时候,经常会用到许多内置方法,简化了我们许多代码,也提高了效率,这篇主要总结一些常用的方法. ISNULL VS COALESCE VS NULLIF 在SQL中,NULL值是比较特殊 ...
- 【系统篇】从int 3探索Windows应用程序调试原理
探索调试器下断点的原理 在Windows上做开发的程序猿们都知道,x86架构处理器有一条特殊的指令——int 3,也就是机器码0xCC,用于调试所用,当程序执行到int 3的时候会中断到调试器,如果程 ...
- <十五>JDBC_使用 DBUtils 进行更新、查询操作
详解待续... DBUtilsTest.java import java.sql.Connection;import java.sql.Date;import java.sql.ResultSet;i ...
- CF2.C
C. Vladik and fractions time limit per test 1 second memory limit per test 256 megabytes input stand ...
- Red Hat5下源码安装mysql5.6过程记录
1.安装cmake包 [root@edu soft]# tar -xzf cmake-.tar.Z [root@edu soft]# cd cmake- [root@edu cmake-]# ./co ...
- 2016huasacm暑假集训训练五 J - Max Sum
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/J 题意:求一段子的连续最大和,只要每个数都大于0 那么就会一直增加,所以只要和0 ...
- 谢欣伦 - OpenDev原创教程 - 蓝牙设备查找类CxBthRemoteDeviceFind
这是一个精练的蓝牙设备查找类,类名.函数名和变量名均采用匈牙利命名法.小写的x代表我的姓氏首字母(谢欣伦),个人习惯而已,如有雷同,纯属巧合. CxBthRemoteDeviceFind的使用如下: ...
- Autocad 2012 win7(64位)启动时一直卡在acmgd.dll处的解决方案
安装Autocad 2012后,激活成功后,无法正常启动,一直卡在加载acmgd.dll 通过Procmon监控后发现加载C:\Windows\fonts\AdobeFnt11.lst处出错, 通过命 ...
- 详解Maple如何公式推导和生成代码
公式推导 直观自然的数学表达式,智能的关联菜单,交互式助手等协助您从容通过推导过程,让您更容易地完成解决方案的开发,快速.无错! 分析 Maple 内置超过大量的计算函数,包括积分变换,微分方程求解器 ...
- .NET Core与.NET Framework、Mono之间的关系
随着微软的.NET开源的推进,现在在.NET的实现上有了三个.NET Framework,Mono和.NET Core.经常被问起Mono的稳定性怎么样,后续Mono的前景如何,要回答这个问题就需要搞 ...