vue项目中导入excel文件(使用element-ui)

需要使用的包有 XLSX
npm安装:

npm install --save xlsx

在element-ui 中有一个组件叫 upload,可以直接拿来用

<el-upload 
	action=""
	:auto-upload="false"  // 因为只是读取数据到表格,并不需要上传到服务器
	:show-file-list="false" // 因为是直接读到表格,不用展示文件列表
	:on-change="import"> // 监听 on-change 事件,具体介绍看element官网
	<el-button> inport </el-button>
</el-upload>

method: {
	import(file, fileList){
		const fileReader = new FileReader();
      	fileReader.onload = (ev) => {
        try {
          const data = ev.target.result;
          const workbook = XLSX.read(data, {
            type: 'binary'
          });
          console.log(workbook)
          let sheet = Object.keys(workbook.Sheets)[0];
          const json = XLSX.utils.sheet_to_json(workbook.Sheets[sheet]);  //获得以第一列为键名的sheet数组对象
          console.log(json)
          } catch (e) {
            console.log(e)
          }
        };
        fileReader.readAsBinaryString(file.raw);
	}
}
全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
头像
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
oppo 应用软开 22*15+0.5*12
拿到了ssp完美:真的坎坷,但是你至少拿到这么多offer了!
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务