【发布时间】:2016-12-06 15:15:30
【问题描述】:
我有以下代码,应该将 JSON 对象编码为 XLSX,然后下载:
this.data = {
foo: "xyz"
}
let json2xls = require('json2xls');
var data = json2xls(this.data);
let blob = new Blob([data], { type: "binary" });
let a = angular.element("a");
a.attr("href", this.$window.URL.createObjectURL(blob));
a.attr("download", "myfile.xlsx");
a[0].click();
它确实创建并下载了一个文件,但 excel 无法打开它。
我确信下面的转换方法有效,因为我可以将this.data 发送到服务器,使用fs.writeFile() 保存,然后下载此文件。
var data = json2xls(this.data);
如何从 JSON 解析为 XLS,然后在浏览器中将其另存为 XLS?
【问题讨论】:
-
您是否遇到了特定错误?也许这是 mime 类型的问题?我还建议在文本编辑器中打开 .xlsx,甚至可能在那里检查 XML 以查看它是否有效。也许您必须对 JSON 格式进行一些处理才能使其与
json2xls一起使用。
标签: javascript angularjs json meteor blob