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

歡迎訪問 生活随笔!

生活随笔

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

vue

vue 导入excel解析_【Vue 笔记】Vue 读取excel数据并生成数组

發布時間:2024/10/8 vue 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue 导入excel解析_【Vue 笔记】Vue 读取excel数据并生成数组 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

因為需求需要讀取excel的.xlsx和.xls文件來批量生成網頁數據。找了網上的資料后發現js-xlsx可以實現。

首先安裝依賴:

$ npm install xlsx

HTML部分:

引入:

import XLSX from 'xlsx'

設置數據:

data() {

return {

outputs: []

}

},

給input標簽綁定監聽事件:

mounted() {

this.$refs.upload.addEventListener('change', e => {//綁定監聽表格導入事件

this.readExcel(e);

})

},

讀取excel文件信息并輸出內容:

methods: {

readExcel(e) {//表格導入

var that = this;

const files = e.target.files;

console.log(files);

if(files.length<=0){//如果沒有文件名

return false;

}else if(!/\.(xls|xlsx)$/.test(files[0].name.toLowerCase())){

this.$Message.error('上傳格式不正確,請上傳xls或者xlsx格式');

return false;

}

const fileReader = new FileReader();

fileReader.onload = (ev) => {

try {

const data = ev.target.result;

const workbook = XLSX.read(data, {

type: 'binary'

});

const wsname = workbook.SheetNames[0];//取第一張表

const ws = XLSX.utils.sheet_to_json(workbook.Sheets[wsname]);//生成json表格內容

console.log(ws);

that.outputs = [];//清空接收數據

for(var i= 0;i

var sheetData = {

address: ws[i].addr,

value: ws[i].value

}

that.outputs.push(sheetData);

}

this.$refs.upload.value = '';

} catch (e) {

return false;

}

};

fileReader.readAsBinaryString(files[0]);

}

},

輸出結果示例(outputs):

[{

addr:'abcadadadad',

value:0.001

},

{

addr:'abcadadadad',

value:0.001

}]

注意:

excel的第一行必須是對應的鍵值,比如:

addr

value

abcadadadad

0.001

abcadadadad

0.001

總結

以上是生活随笔為你收集整理的vue 导入excel解析_【Vue 笔记】Vue 读取excel数据并生成数组的全部內容,希望文章能夠幫你解決所遇到的問題。

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