日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

Vue+iview实现自定义格式导出Excel文件

發布時間:2023/12/31 vue 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vue+iview实现自定义格式导出Excel文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景:項目中要實現一個導出Excel文件模板的功能,原來實現是通過后臺生成然后前端請求下載,這樣要消耗IO資源,然后看了一下之前項目的導出功能,發現原來Vue+iview可以實現本地數據導出,不過iview自帶的方法只能導入CSV格式的文件,然后我是需要導出xlsx格式的文件,研究了一下,通過簡單修改iview源碼,可以實現自定義格式的文件,比如Excel,txt等,下面走起

1.先添加導出按鈕

<Buttontype="primary"@click="exportData" >導出模板</Button>

2.綁定表格模板

<Table:columns="modelColumns" :data="modelData"ref="modelTable" v-show="false" ></Table> // v-show隱藏表格,這個表格只是用來作為一個導出的模板而存在 // 不能用v-if,會把表格代碼去除

3.綁定數據和方法

<script>export default{data(){return{modelData:[],modelColumns:[{title:'手機號'}// 列名根據需要添加]}},methods:{exportData(){this.$refs.modelTable.exportCsv({filename:'模板名字',columns:this.modelColumns,data:this.modelData})}}} </script>

如果只要導出CSV格式的文件,到這里就已經ok了,下面我們通過改源碼實現自定義格式
寫出上面代碼后,按住Ctrl點exportCsv方法,先擇iview.js文件進去,然后exportCsv的方法,復制在后面,自定義一個名字,修改下面的關鍵代碼,然后和調用exportCsv一樣,調用加一個type屬性就ok了

if(params.filename){if(params.filename.indexOf('.'+params.type)===-1{params.filename+='.'+params.type;} }else{params.filename='table.'+params.type; }

修改完之后保存,其它不變,調用方法時增加type屬性

methods:{exportData(){this.$refs.modelTable.exportCsv({filename:'模板名字',type:'xlsx' // 也可以填寫txt,xlscolumns:this.modelColumns,data:this.modelData})} }

總結

以上是生活随笔為你收集整理的Vue+iview实现自定义格式导出Excel文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。