javascript - XLSX.utils.book_new() 不是函数错误

标签 javascript jquery filesaver.js sheetjs

我正在使用 SheetJS 库将 Excel 转换为 JSON,反之亦然。虽然将 Excel 转换为 JSON 的代码工作正常,但将 JSON 转换回 Excel 的代码存在问题。请找到下面的代码:

var wb = XLSX.utils.book_new();
wb.Props = {
    Title: "SheetJS Tutorial",
    Subject: "Test",
    Author: "Red Stapler",
    CreatedDate: new Date(2017, 12, 19)
};

wb.SheetNames.push("Test Sheet");
var ws_data = [['hello', 'world']];
var ws = XLSX.utils.aoa_to_sheet(ws_data);
wb.Sheets["Test Sheet"] = ws;
var wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });
function s2ab(s) {

    var buf = new ArrayBuffer(s.length);
    var view = new Uint8Array(buf);
    for (var i = 0; i < s.length; i++) view[i] = s.charCodeAt(i) & 0xFF;
    return buf;

}

saveAs(new Blob([s2ab(wbout)], { type: "application/octet-stream" }), 'test.xlsx');

上面的代码一直给出 XLSX.utils.book_new() is not a function 错误。有人遇到过类似的问题吗?

谢谢

最佳答案

我也遇到了同样的问题。这是因为没有找到相对路径,因此无法调用XLSX.utils.book_new。您可以使用源代码的绝对路径,如下所示:

<script lang="javascript" src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.15.2/xlsx.full.min.js"></script>
<script lang="javascript" src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/1.3.8/FileSaver.min.js"></script>

关于javascript - XLSX.utils.book_new() 不是函数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54800997/

相关文章:

javascript - jQuery :cant use split function

javascript - 我需要添加一个加载一次的 JavaScript 加载函数

javascript - 在html中动态添加事件监听器

javascript - JSpdf 在 Internet Explorer 中工作但在 Chrome 中不工作

ember.js - 下载ember中的文件: using Ember-cli-file-saver

javascript - React 前端未与 Spring Boot REST API 通信。控制台 axios 网络错误

javascript - 无法向 JS 变量输入值

jquery - 仅使用 jquery 对表进行排序,无需其他插件

jquery - jQuery 中可能的 "Transparent Film"效果?我难住了

javascript - html2canvas + FileSaver 浏览器问题