如何使用 fetch API 和 XLSX 库加载和解析 .xlsx 文件
How to load and parse .xlsx file using fetch API and XLSX library
我正在导入这些库:
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/xlsx.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/jszip.js"></script>
并尝试获取和解析保存在我的项目文件夹中的本地文件:
fetch('Eshop_product_list.xlsx').then(res => {
return res.blob();
}).then(res => {
console.log('file:', res);
var workbook = XLSX.read(res, {
type: 'binary'
});
});
但我无法让它工作。我尝试了 XLSX 类型参数与 res.blob(), res.text(), res.bufferArray()
的不同组合,但每次都会抛出错误。
正确的方法是什么?
尝试使用 res.arrayBuffer()
而不是 res.bufferArray()
替换为您的示例:
fetch('Eshop_product_list.xlsx').then(res => {
return res.arrayBuffer();
}).then(res => {
console.log('file:', res);
var workbook = XLSX.read(new Uint8Array(res), {
type: 'array'
});
});
我正在导入这些库:
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/xlsx.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.8.0/jszip.js"></script>
并尝试获取和解析保存在我的项目文件夹中的本地文件:
fetch('Eshop_product_list.xlsx').then(res => {
return res.blob();
}).then(res => {
console.log('file:', res);
var workbook = XLSX.read(res, {
type: 'binary'
});
});
但我无法让它工作。我尝试了 XLSX 类型参数与 res.blob(), res.text(), res.bufferArray()
的不同组合,但每次都会抛出错误。
正确的方法是什么?
尝试使用 res.arrayBuffer()
而不是 res.bufferArray()
替换为您的示例:
fetch('Eshop_product_list.xlsx').then(res => {
return res.arrayBuffer();
}).then(res => {
console.log('file:', res);
var workbook = XLSX.read(new Uint8Array(res), {
type: 'array'
});
});