zoukankan      html  css  js  c++  java
  • Vue+element 实现表格导出xlsx格式

    Vue+element 实现表格导出xlsx格式

    1、安装

    npm install file-saver xlsx --save
    cnpm install file-saver xlsx --save //淘宝镜像

    2、新建一个文件夹daochubiaoge放daochubiaoge.js

    import FileSaver from 'file-saver'
    import XLSX from 'xlsx'
    
    export  function fileXlsx(biaogeName,id) {
        let time = new Date()
        let year = time.getFullYear()
        let month = time.getMonth() + 1
        let day = time.getDate()
        let name = biaogeName + year + '' + month + '' + day
        // console.log(name)
        /* generate workbook object from table */
        //  #table要导出的是哪一个表格
        var wb = XLSX.utils.table_to_book(document.querySelector(id))
        /* get binary string as output */
        var wbout = XLSX.write(wb, {
            bookType: 'xlsx',
            bookSST: true,
            type: 'array',
        })
        try {
            //  name+'.xlsx'表示导出的excel表格名字
            FileSaver.saveAs(
                new Blob([wbout], { type: 'application/octet-stream' }),
                name + '.xlsx'
            )
        } catch (e) {
            if (typeof console !== 'undefined') console.log(e, wbout)
        }
        return wbout
    }

    3、在需要的vue文件中引用

     <template>
        <div>
            <el-table :data="tableData" style=" 100%" id="table">
            <el-table-column prop="date"  label="日期" width="180"> </el-table-column>
            <el-table-column prop="name" label="姓名" width="180"></el-table-column>
            <el-table-column prop="address" label="地址"></el-table-column>
          </el-table>
          <el-button @click="exportExcel">导出</el-button>
        </div>
     </template>
     
     <script>
      import * as FileSaver from '@/daochubiaoge/daochubiaoge'
       export default {
           data() {
             return {
               tableData: [{
                 date: '2016-05-02',
                 name: '王小虎',
                 address: '上海市普陀区金沙江路 1518 弄'
               }, {
                 date: '2016-05-04',
                 name: '王小虎',
                 address: '上海市普陀区金沙江路 1517 弄'
               }, {
                 date: '2016-05-01',
                 name: '王小虎',
                 address: '上海市普陀区金沙江路 1519 弄'
               }, {
                 date: '2016-05-03',
                 name: '王小虎',
                 address: '上海市普陀区金沙江路 1516 弄'
               }]
             }
           },
             methods: {
               exportExcel () {
                 FileSaver.fileXlsx('表格1-','#table')
               }
             }
     }
    </script>

    如图:

  • 相关阅读:
    Oracle 临时事务表 全局临时表_global temporary table
    js String Trim函数
    解决Navicat Error: Missing required libmysql_d.dll
    win8双屏敲代码
    条件注释判断浏览器
    Eclipse 中Alt+/快捷键失效的解决办法。
    解决java写入xml报错org.w3c.dom.DOMException:DOM002 Illeg
    用解释计划评估创建索引后对单表查询效率的影响
    在某文件夹查找以日期命名的目录,如果早已目标时间则删除之
    (Python)正则表达式进行匹配
  • 原文地址:https://www.cnblogs.com/juewuzhe/p/14192852.html
Copyright © 2011-2022 走看看