Vue.JS实现导出Ecxcel功能(vue-json-excel)

简介: Vue.JS实现导出Ecxcel功能(vue-json-excel)

在项目开发时免不了有时会用到表格数据导出Excel的功能,那么我们可以使用vue-json-excel来实现此功能,而且vue-json-excel使用起来非常简单。

官方地址:vue-json-excel - npm

主要参数:

Name Type Description Default
data Array

要导出的数据。

fields Object

要导出的 JSON 对象内的字段。如果未提供,则 JSON 中的所有属性都将被导出。

export-fields (exportFields) Object

用于解决使用变量字段的其他组件的问题,例如 vee-validateexportFields 的工作方式与字段完全相同

type string

Mime 类型 [xls, csv]

xls
name string

要导出的文件名。

data.xls
header string/Array

数据的标题。可以是字符串(一个标题)或字符串数组(多个标题)。

title(deprecated) string/Array

与标头相同,保留标题是出于复古兼容性目的,但由于与 HTML5 标题属性冲突,不建议使用它。

footer string/Array

数据的页脚。可以是字符串(一个页脚)或字符串数组(多个页脚)。

default-value (defaultValue) string

当行没有字段值时用作后备。

''
worksheet string

工作表选项卡的名称。

'Sheet1'
fetch Function

下载前回调以获取数据,如果已设置,则在按下鼠标后和下载过程之前立即运行。

重要提示:仅在未定义数据道具时才有效。

before-generate Function

在生成/获取数据之前回调调用方法,例如:显示加载进度

before-finish Function

在下载框弹出之前回调调用方法,例如:隐藏加载进度

stringifyLongNum Boolean

stringify long number and decimal(解决丢失数字精度的问题),默认:false

escapeCsv Boolean

这会转义 CSV 值,以解决数字字段的一些 excel 问题。但这将用=""包装每个 csv 数据,以避免您必须将此道具设置为 false。默认值:真

安装、配置

npm install vue-json-excel

image.png

接下里在main.js中进行全局配置

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

开始使用

运行界面

image.png

核心代码

我这边是前后端分离的项目,直接调用接口API来获取列表数据,然后返回。

注意:我这里因为自己的界面样式需要才这样改的,你开发时根据自己的界面情况来定义样式。

.export-excel {
  display: inline !important;
}
     <download-excel
            class="export-excel"//样式自己定义
            :fields="json_fields"
            :fetch = "fetchData"
            title="用户统计"
            name="统计列表.xls">
       <el-button type="primary" size="mini" round>
            导出Excel
         </el-button>
      </download-excel>
  export default {
     data() {
       return {
          json_fields: {
          姓名: "memberName", // 这里的表头字段可以自由指定
          会员号: "memberNum",
          性别: "memberSex",
          年龄: "memberAge",
          注册日期: "date",
          电话: "phone",
          审核状态: "status",
          地址: "memberAddr"
      },
      json_meta: [
        [
          {
            " key ": " charset ",
            " value ": " utf- 8 "
          }
        ]
      ]
   }
}
 methods: {
      async fetchData(){
      const response = await this.axios.post('/api/member/list');
      console.log(response);
      return response.data;
    }
}

效果如下图:

image.png


相关文章
|
13天前
|
JavaScript 容器
带方向感知功能的js图片遮罩层插件
带方向感知功能的js图片遮罩层插件
|
29天前
|
数据可视化 数据处理 Python
使用Pandas实现Excel中的数据透视表功能
本文介绍了如何使用Python的Pandas库实现Excel中的数据透视表功能,包括环境准备、创建模拟销售数据、代码实现及输出等步骤。通过具体示例展示了按地区和销售员汇总销售额的不同方法,如求和、平均值、最大值等,帮助读者掌握Pandas在数据处理上的强大能力。
59 12
|
2月前
|
JavaScript 前端开发 容器
jQuery多功能滑块插件r-slider.js
r-slider.js是一款jQuery多功能滑块插件。使用该插件,可以制作出滑块、开关按钮、进度条、向导步骤等多种效果。
42 5
|
2月前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
56 4
|
2月前
|
前端开发 Java easyexcel
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
131 8
|
2月前
|
JavaScript
js实现简洁实用的网页计算器功能源码
这是一款使用js实现简洁实用的网页计算器功能源码。可实现比较基本的加减乘除四则运算功能,界面简洁实用,是一款比较基本的js运算功能源码。该源码可兼容目前最新的各类主流浏览器。
28 2
|
3月前
|
存储 JSON JavaScript
JavaScript JSON
【10月更文挑战第7天】JSON 是 JavaScript 中非常重要的一个数据格式,它为数据的表示和传输提供了一种简单而有效的方式。掌握 JSON 的使用方法和特点,对于开发高质量的 JavaScript 应用具有重要意义。
|
3月前
|
人工智能 JavaScript 网络安全
ToB项目身份认证AD集成(三完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法
本文详细介绍了如何使用 `ldapjs` 库在 Node.js 中实现与 Windows AD 的交互,包括用户搜索、身份验证、密码修改和重置等功能。通过创建 `LdapService` 类,提供了与 AD 服务器通信的完整解决方案,同时解决了中文字段在 LDAP 操作中被转义的问题。
|
3月前
|
JavaScript 前端开发 API
|
3月前
|
JavaScript API UED
vue.js怎么实现全屏显示功能
【10月更文挑战第7天】
54 1

热门文章

最新文章