vue-json-excel官方文档

使用方法

1. 在项目中安装vue-json-excel

npm install vue-json-excel -S

2. 在main.js中,将vue-json-excel在全局注册

import Vue from "vue";
import JsonExcel from "vue-json-excel";Vue.component("downloadExcel", JsonExcel);

3. API参数解读

参数名 参数类型 描述 默认值
data 数组 需要导出的参数
fields 对象 规定导出数据中的字段名称与文件每一列列头名称的关系。
要导出的JSON对象中的字段。如果没有提供,JSON中的所有属性将被导出。
export-fields (exportFields) 对象 解决与其他组件的命名冲突问题。
用于解决其他使用变量字段的组件(如vee-validate)的问题。exportFields的工作原理与字段完全相同
type 字符串 文件类型。xls或者csv xls
name 字符串 导出文件名称。 data.xls
default-value (defaultValue) 字符串 如果某一行没有字段值时候起作用。
当行没有字段值时用作回退。
header 字符串/数组 导出文件表格标题。
数据的标题。可以是字符串(一个标题)或字符串数组(多个标题)。
title(deprecated) 字符串/数组 与header一样,为了向后兼容,我们也保留了title,但不建议使用它,因为它会与HTML5的title属性冲突。
footer 字符串/数组 导出文件数据页脚。
可以是字符串(一个页脚)或字符串数组(多个页脚)。
’ ’
worksheet 方法 工作表选项卡的名称。 ‘Sheet1’
fetch 方法 在点击下载按钮后,开始下载之前执行的函数。
回调以获取数据下载之前,如果它被设置设置了,它将在点击鼠标之后立即执行(这个过程是在开始下载之前的)。重要提示:只有在没有定义数据道具的情况下才有效。
before-generate 方法 在生成/获取数据之前调用方法,例如:显示加载进度
before-finish 方法 在下载框弹出之前调用方法的回调,例如:隐藏加载进度
stringifyLongNum 布尔类型 长数字和十进制(解决数字精度丢失的问题),默认:false
escapeCsv 布尔类型 这将转义CSV值,以修复一些excel数字字段的问题。但这会用=" and "包装所有csv数据,以避免你不得不将这个道具设为假。默认值:真正的

4. 关键代码

1. template标签中

<download-excel:fields="exportDataStandard":data="exportData"type="xls":name="exportName":header="exportHeader":footer="exportFooter":defaultValue="exportDefaultValue":fetch="createExportData":before-generate="startDownload":before-finish="finishDownload"worksheet="导出信息"
><el-button icon="el-icon-download">导出</el-button>
</download-excel>

2. script标签中

export default {name: "BMSStationInfo",components: {BMSStationInfoDetailInformation},data() {return {exportDataStandard: {"名称": "name","性别": "sex","地区": {field: "phone",callback: value => {return `他的电话是:${value}`}}},exportData: [{name: "甲", sex: "女", phone: 15521103211},{name: "乙", sex: "男", phone: 15521103222},{name: "丙", sex: "女", phone: 15521103233},{area: "北京市朝阳区"},{name: "丁", sex: "男", phone: 15521103233},{name: "丁", sex: "男", phone: 15521103233},],exportName: "导出数据",exportHeader: ["用户信息页头1","用户信息页头2"],exportFooter: ["用户的信息页脚1","用户的信息页脚2"],exportDefaultValue: "这一行这一列没有数据"}},methods: {createExportData() {// 点击导出按钮之后,开始导出数据之前的执行函数,返回值为需要下载的数据// TODO:构造需要下载的数据返回return [{name: "甲", sex: "女", phone: 15521103211},{name: "乙", sex: "男", phone: 15521103222},{name: "丙", sex: "女", phone: 15521103233},{area: "北京市朝阳区"},{name: "丁", sex: "男", phone: 15521103233},{name: "丁", sex: "男", phone: 15521103233},];},startDownload() {console.log("数据开始")},finishDownload() {console.log("数据下载完成")}}
}

5. 重点参数具体使用

  1. fields:规定导出数据中的字段名称与文件每一列列头名称的关系。可以使用callback回调函数的形式,对字段进行格式化。如果fields没有规定默认格式的话,会把所有的数据都导出。
    举例:

  2. data:需要导出的数据参数,数组中存储对象,每一个对象就是导出的一行数据,data中的键对应fields中的值。

  3. default-value:如果某一行中,没有fields中规定的默认数据的话,会导出默认值的值。如图中导出数据中的第三行,没有name、sex和phone,而设置的默认值为:“这一行这一列没有数据”,则导出的样式为:

  1. header、footer:规定导出信息页头页脚。
    ① 如果是一个字符串,则导出形式如下:


    ② 如果是一个字符串数组,则导出形式如下:

  2. worksheet:规定excel表格下方选项卡名称

  3. fetch、before-generate 、before-finish 这三个接收三个方法。
    ① fetch:点击下载按钮后立即执行,会在开始下载数据前执行。返回值为下载的数据。这里可以将函数定义为async函数,并在里面await暂停等待,请求数据,构造下载所需要的的数据。

    ② before-generate、before-finish这两个分别作用于开始下载之前和开始下载之后,可以用来控制显示下载进度条。

Vue:使用vue-json-excel导出数据到excel相关推荐

  1. C#利用Microsoft.Office.Interop.Excel导出数据到Excel

    添加引用(VS2013位于C:\Program Files (x86)\Microsoft Visual Studio 12.0\Visual Studio Tools for Office\PIA\ ...

  2. 如何在 Vue 中导出数据至 Excel 表格 - 卡拉云

    本文首发:<如何在 Vue 中导出数据至 Excel 表格 - 卡拉云> 我们经常需要在 Vue 搭建的后台管理系统里导出数据到 Excel / CSV ,方便我们将数据共享给其他同学或在 ...

  3. arcengine遍历属性表_【程序之坑】小程序云开发导出数据到excel表

    本文解决了小程序云开发导出数据到excel的bug,并给出了分析的过程,同时简化了程序为一个云函数,一个本地函数,逻辑更简单.文章结尾给出了完整源代码 小程序云开发为没有服务器的小程序开发者提供了便利 ...

  4. JS 打印 data数据_小程序导出数据到excel表

    小程序导出数据到excel表,借助云开发后台实现excel数据的保存 我们在开发小程序的过程中,可能会有这样的需求:如何将云数据库里的数据批量导出到excel表里? 这个需求可以用强大的云开发轻松实现 ...

  5. django 导出数据到excel表 导出excel表到目标路径及客户端下载

    python导出excel表利用的是xlwt模块 学习的网址 大佬教学网址 导出数据到excel表 下面是代码 import os from xlwt import Workbook from inf ...

  6. phpAdmin6.0 后台导出数据到excel

    phpAdmin6.0 后台导出数据到excel的坑之一: 成功导出数据到excel表,必须要满足两个条件: 1,前端代码: 这个后台的前端js部分,因为js接收后台返回的数据data必须是json的 ...

  7. 踩坑:EasyExcel导出excel导出数据为空

    我再java代码中导出excel 导出数据为空如下图 问题探究 经过断点排查数据 发现数据取出来了 那么问题就不在取数据而在数据写入部分 经过排查翻阅博客发现了这么一句话 读写反射对象用到了Cglib ...

  8. java导出为excel文件_java导出数据到excel文件

    有的时候,将一些有用的数据导出到excel是很有必要的.比如说,我现在在做一个学校的在线教学平台,有一个需求是:将学生成绩导出到excel文件中去. 那怎样实现用java导出数据到excel文件呢?? ...

  9. Excel向数据库插入数据和数据库向Excel导出数据

    为了熟悉java里工作簿的相关知识点,所以找了"Excel向数据库插入数据和数据库向Excel导出数据"的功能来实现. 注意事项:1,mysql数据库: 2,需要导入的jar包有 ...

  10. 百度指数常见php框架,怎么导出数据到excel表格-如何将百度指数数据导出到Excel表格...

    如何将百度指数数据导出到Excel表格 第一步:打开CAD.CAD命令行输入"Li"."选择对象"选需要提取坐标的多段线.回车. 第二步:将CAD文本框中的数据 ...

最新文章

  1. 人工智能和自然智能能否交汇?李飞飞对话斯坦福神经生物学教授Bill Newsome
  2. 设计模式-简单工厂模式
  3. 准备换工作了,有2家公司都有吸引的地方,帮忙抉择下
  4. 【Windows】如何判断当前鼠标是否按下左键或右键
  5. 拥抱对手 微软崛起或靠“云计算”业务
  6. 1、ASP.NET MVC入门到精通——新语法
  7. 关于oracle sql语句查询时表名和字段名要加双引号的问题
  8. 消息队列MQ如何保证消息的幂等性
  9. UMeditor上传图片无反应
  10. androidx86 9.0下载_Surface pro 安装 android x86/chrome OS
  11. 超简单的内网邮件服务器搭建(CentOS7 postfix+dovecot)
  12. Keil5最新注册机到2032
  13. Axure 画原型图
  14. 网页一直提示flash版本过低升级后还是不行
  15. 如何把自己打造成为一名金领架构师-基础篇(一)
  16. Android之高仿记事本、备忘录、便签
  17. [GXYCTF 2019]Ping Ping Ping
  18. 离开腾讯首创业,贾佳亚谈人工智能 2.0 革命,技术究竟该如何变革?
  19. 与贸易有关的知识产权协议 (转)
  20. 如何提高程序员的生产率 (2)

热门文章

  1. java崩溃停在崩溃代码上_通过编写Java代码让Jvm崩溃
  2. struts中采用注解配置Action
  3. Hadoop报错 Failed to locate the winutils binary in the hadoop
  4. fiddler抓包工具1
  5. JS---DOM操作有哪一些
  6. 给Debian浏览器安装flash播放插件
  7. URAL-1998 The old Padawan 二分
  8. 我学习的自定义ASP.NET分页控件
  9. php 写入.csv文件注意点
  10. C# winform程序运行在XP