zoukankan      html  css  js  c++  java
  • VUE中使用vue-json-excel超级方便导出excel表格数据

    在项目开发时免不了有时会用到表格数据导出excel的功能,以前会用file-saver xlsx script-loader来导出,而且配置非常麻烦,现在用vue-json-excel配置及使用都非常简单

    一、安装vue-json-excel

    npm install vue-json-excel -S
    
    • 1

    二、main.js里面引入并注册使用

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

    三、页面中使用

    <download-excel
        class = "export-excel-wrapper"
        :data = "json_data"
        :fields = "json_fields"
        name = "filename.xls">
        <!-- 上面可以自定义自己的样式,还可以引用其他组件button -->
        <!-- <el-button type="primary" size="small">导出EXCEL</el-button> -->
    </download-excel>
    

    在这里说明一下组件的各个属性

    • json_data:需要导出的数据
    • json_fields:自主选择要导出的字段,若不指定,默认导出全部数据中心全部字段
    属性名类型描述
    data Array 需要导出的数据,支持中文
    fields Object 定义需要导出数据的字段
    name String 导出excel的文件名
    type String 导出excel的文件类型(xls,csv),默认是xls

    下面给个实例

    注意以下几点

    • json_fields里面的属性是excel表每一列的title,注意多个词组组成的属性名要加双引号
    • 如果需要自定义导出的数据,可以定义回调函数。
    data() {
        return {
          json_fields: {
            "Complete name": "name",    //常规字段
            Telephone: "phone.mobile", //支持嵌套属性
            "Telephone 2": {
              field: "phone.landline",
                        //自定义回调函数
              callback: value => {
                return `Landline Phone - ${value}`;
              }
            }
          },
          json_data: [
            {
              name: "Tony Peña",
              city: "New York",
              country: "United States",
              birthdate: "1978-03-15",
              phone: {
                mobile: "1-541-754-3010",
                landline: "(541) 754-3010"
              }
            },
            {
              name: "Thessaloniki",
              city: "Athens",
              country: "Greece",
              birthdate: "1987-11-23",
              phone: {
                mobile: "+1 855 275 5071",
                landline: "(2741) 2621-244"
              }
            }
          ],
          json_meta: [
            [
              {
                " key ": " charset ",
                " value ": " utf- 8 "
              }
            ]
          ]
        };
      }
     
     
  • 相关阅读:
    POJ 3321:Apple Tree + HDU 3887:Counting Offspring(DFS序+树状数组)
    BZOJ 1026:windy数(数位DP)
    POJ 3087 Shuffle'm Up
    POJ 1835 宇航员
    差分约束系统
    POJ
    2016 百度之星初赛 Gym Class(优先队列+拓扑排序)
    HDU 4786 Fibonacci Tree
    Codeforces 691D Swaps in Permutation
    FZU 2195 检查站点
  • 原文地址:https://www.cnblogs.com/shaozhu520/p/12653855.html
Copyright © 2011-2022 走看看