在vue中如何读取本地excal和xls数据内容。
这里使用xlsx插件
安装 npm install xlsx --save
使用:
// 上传文件,这里只是测试,自己可以加上文档格式判断等
fileChange(e) {
var file = e.target.files[0];
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, 'ws是表格里的数据,且是json格式')
// 重写数据
this.$refs.file.value = ''
} catch (e) {
return false
}
}
fileReader.readAsBinaryString(file)
}
这是打印出的结果内容,完美,然后自己从里面取值就可以了。
不过这里有个问题,就是excal文档中,如果表格格式没设置正确,你输入的日期格式,在项目里都会变成一串不知道怎么转换的数字。这里建议将文档表格格式全部设为文本,有的用户可能不会的话,就需要你自己在页面里放个模板下载了。
选中全部表格,右键设置单元格格式,将数字一栏设为文本即可
版权声明:本文为L_eiDigaga原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。