原文地址:https://www.cnblogs.com/liuxianan/p/js-excel.html
所需插件地址:https://github.com/SheetJS/js-xlsx
兼容性:
主要js位置:dist文件夹下
普通html中直接引入 xlsx.core.min.js
webpage中在js中引入,位置自己调整:
import XLSX from '../xlsx.core.min';
如果页面报错:can not resolve 'fs'xxxxx,在配置文件中加入
node: {
fs: 'empty'
},
使用(其中一种方式,灵活调用下):
html代码
<input type="file" id="file"> <input type="button" value="demo" id="demo">
function demo() {
let resultFile = document.getElementById('file').files[0];
if (resultFile) {
let reader = new FileReader();
reader.readAsBinaryString(resultFile);
reader.onload = function (e) {
let data = e.target.result;
let workbook = XLSX.read(data, {type: 'binary'});
var sheetNames = workbook.SheetNames; // 工作表名称集合
sheetNames.forEach(name => {
var worksheet = workbook.Sheets[name]; // 只能通过工作表名称来获取指定工作表
for (var key in worksheet) { // .v是读取单元格的原始值,.t是单元格内容类型,.f是单元公式 !开头是有合并,c是列r是行(从0开始算)
console.log(key, key[0] === '!' ? worksheet[key] : worksheet[key].v);
}
});
//直接获取sheet列表
//let sheets = workbook.Sheets;
//通过名字获取
//let sheet=sheets[name];
};
}
}