<el-upload :action="url" :http-request="importExcel" list-type="text" :show-file-list="false" >
<el-button size="small" type="primary">导入</el-button>
</el-upload>
import XLSX from 'xlsx' // 需要引入 XLSX
importExcel (content) {
const file = content.file
// let file = file.files[0] // 使用传统的input方法需要加上这一步
const types = file.name.split('.')[1]
const fileType = ['xlsx', 'xlc', 'xlm', 'xls', 'xlt', 'xlw', 'csv'].some(item => item === types)
if (!fileType) {
this.$message('格式错误!请重新选择')
return
}
this.file2Xce(file).then(tabJson => {
if (tabJson && tabJson.length > 0) {
this.xlsxJson = tabJson
this.fileList = this.xlsxJson[0].sheet
let n = '匹配的字段'
this.fileList.forEach((item, index, arr) => {
if (item[n] === this.name) {
this.dataForm.projectno = item['XXXX'] // 需要的值的表头
}
})
}
})
},
file2Xce (file) {
return new Promise(function (resolve, reject) {
const reader = new FileReader()
reader.onload = function (e) {
const data = e.target.result
this.wb = XLSX.read(data, {
type: 'binary'
})
const result = []
this.wb.SheetNames.forEach((sheetName) => {
result.push({
sheetName: sheetName,
sheet: XLSX.utils.sheet_to_json(this.wb.Sheets[sheetName])
})
})
resolve(result)
}
// reader.readAsBinaryString(file.raw)
reader.readAsBinaryString(file) // 传统input方法
})
},
vue读取excel文件中内容
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 本项目使用vue Element使用的插件:XLSX需要在项目中安装依赖 npm install XLSXexce...
- 先把excel的文件另存为csv格式的文件,然后在另存为txt格式的 把txt格式的文件脱入Xcode text文...
- ——边学习边记录~最近需要用到从外部文件导入测试数据,因而上网查了一些读取excel文件这方面的代码,然后修改后适...