vue-element-xlsx在线读取Excel数据预览
生活随笔
收集整理的這篇文章主要介紹了
vue-element-xlsx在线读取Excel数据预览
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
??vue-element-xlsx在線讀取Excel數據預覽
?1.安裝XLSX
npm install xlsx -s2.復制過去就可以用?
<template><div><!-- excel表格上傳 --><el-uploadclass="upload-demo"dragaction="https://jsonplaceholder.typicode.com/posts/"multipleaccept=".xlsx":on-exceed="exceed":limit="1":on-remove="remove":http-request="uploadFile"><i class="el-icon-upload"></i><div class="el-upload__text">將文件拖到此處,或<em>點擊上傳</em></div><div class="el-upload__tip" slot="tip">1次只能上傳1個xls文件,且不超過500kb</div></el-upload><!-- 上傳的excel表格預覽 --><div class="preview-excel"><el-table class="listTable_ele" v-show="listTable.length != 0" :data="listTable" stripe height="250" style="width:100%"><el-table-column prop="name" label="姓名" width="200" align="center"></el-table-column><el-table-column prop="age" label="年齡" width="200" align="center"></el-table-column><el-table-column prop="city" label="城市" width="200" align="center"></el-table-column><el-table-column prop="sno" label="學號" width="200" align="center"></el-table-column></el-table></div></div> </template><script>import XLSX from "xlsx"; //引入xlsxexport default {data() {return {listTable: []};},methods: {//解析excelasync uploadFile(params) {const _file = params.file;const fileReader = new FileReader();fileReader.onload = (ev) => {try {const data = ev.target.result;const workbook = XLSX.read(data, {type: 'binary'});for (let sheet in workbook.Sheets) {//循環讀取每個文件const sheetArray = XLSX.utils.sheet_to_json(workbook.Sheets[sheet]);//若當前sheet沒有數據,則continueif(sheetArray.length == 0){continue;}console.log("讀取文件");console.log(sheetArray);for(let item in sheetArray){let rowTable = {};//這里的rowTable的屬性名注意要與上面表格的prop一致//sheetArray的屬性名與上傳的表格的列名一致rowTable.name = sheetArray[item].姓名;rowTable.age = sheetArray[item].年齡;rowTable.city = sheetArray[item].城市;rowTable.sno = sheetArray[item].學號;this.listTable.push(rowTable);}console.log(this.listTable)}} catch (e) {this.$message.warning('文件類型不正確!');}};fileReader.readAsBinaryString(_file);},//上傳1個以上文件時彈窗提示錯誤exceed: function() {this.$message.error("最多只能上傳1個xls文件");},//刪除文件remove() {this.listTable = [];}}}; </script>3.Excel文件格式
4.實現效果
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的vue-element-xlsx在线读取Excel数据预览的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Listen第二个参数的意义
- 下一篇: Java基础入门笔记-字符串