如何使用node.js生成excel文件?

嗨,我去生成excel文件forms的数组,但我没有得到成功。 我正在使用node.js工作,我使用npm包来生成excel文件,但是我没有在excel文件中获取任何数据。 excel是生成,但没有得到我的文件中的任何types的数据。 所以任何人都知道我的错误在哪里,请让我知道如何解决它。

这是我的数组和查询=>

var XLSX = require('xlsx'); var Array = []; Array.push({ username: 'Carakc', fullName: 'Crack', followingCount: 2655, followerCount: 466, biography: 'I am new man' }, { username: 'mahi', fullName: 'Fit', followingCount: 3011, followerCount: 385, biography: 'hello everyone!' }) app.get(prefix + '/GetFollowersInExcel', function (req, res, next) { var ws = XLSX.utils.json_to_sheet(Array); var wb = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(wb, ws, "Followres"); var wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' }); res.end(wbout, 'binary'); } }); } }); }) 

这是我的服务代码=>

 GetFollowersInExcel: function (InstaId) { return $http({ method: "GET", url: ONURL + "GetFollowersInExcel", responseType: "arraybuffer", headers: { 'Content-type': 'application/json', 'Accept': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' } }).then(function (data, status, xhr) { debugger; if (data.data.byteLength > 0) { var file = new Blob([data.data], { type: 'application/binary' }); var fileURL = URL.createObjectURL(file); $('#getexcel').show(); var link = document.createElement('a'); link.href = fileURL; link.download = "myfile.xlsx"; link.click(); URL.revokeObjectURL(file); } }, function (error) { return error; }) }, 

使用这个波我越来越像这个数据在Excel =>

在这里输入图像说明

我想要这个数据在Excel文件=>

在这里输入图像说明

我试过你的第一个代码,我发现没有错误,由此产生的xlsx是完美的。

Peheraps我发现这个问题:var数组声明在app.getcallback之外…你确定你的var数组可以通过XLSX.utils.json_to_sheet正确地到达吗? 它在相同的范围内? 或者它宣布某处不可访问?

尝试在callback中声明它,可能所有的都会正常工作,如果是这样的话,你可以使用一个类或方法从外部检索var(“how”取决于你的代码)

ps改变var的名字,不是覆盖Array对象的好习惯;)