将JSON转换为XLSX并在NodeJS中下载

时间:2019-12-27 10:40:17

标签: node.js typescript express xlsx

我正在尝试在nodejs中将JSON转换为XLSX,将XLSX下载到客户端浏览器。我使用XLSX npm模块将json转换为XLSX,它正在将JSON转换为Workbook,但是我无法下载该文件。

const arr = [
            { name: 'Moran', role: 'back' },
            { name: 'Alain', role: 'front' },
            { name: 'Tony', role: 'back' },
            { name: 'Mike', role: 'back' },
            { name: 'Abo', role: 'back' },
            { name: 'Toni', role: 'back' },
        ]
        const fileName = 'test.xlsx';

        const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(arr);
        const wb: XLSX.WorkBook = XLSX.utils.book_new();
        XLSX.utils.book_append_sheet(wb, ws, 'test');

1 个答案:

答案 0 :(得分:0)

要完成这项工作 使用 def plotFigure2(a, b, c,d,e,f,FullA, FullB, time, ke, name): name = "./data/"+ name +"/" + name + ke + ".png" j = [] x = [] j.append(x) j.append(a) j.append(b) j.append(c) j.append(d) j.append(e) j.append(f) j.append(FullA) j.append(FullB) data = len(f) o = [0, data/3, (data*2)/3, data] oi =["0", str(time/3), str((time*2)/3), str(time)] grid = plt.GridSpec(5, 2, wspace=0.2, hspace=1.5, left=0.05, bottom=0.07, right=0.95, top=0.88) fig = plt.figure(figsize=(20,20)) plt.style.use('seaborn-pastel') plt.subplot(grid[0,0]) plt.plot(a) plt.title("A") plt.ylabel("Volt") plt.xlabel("time(s)") plt.xticks(o, oi) plt.ylim(0,6) plt.subplot(grid[0,1]) plt.plot(b) plt.ylim(0,6) plt.title("B") plt.xlabel("time(s)") plt.xticks(o, oi) plt.subplot(grid[1,0]) plt.plot(c) plt.ylim(0,6) plt.xlabel("time(s)") plt.title("C") plt.ylabel("Volt") plt.xticks(o, oi) plt.subplot(grid[1,1]) plt.plot(d) plt.ylim(0,6) plt.title("D") plt.xlabel("time(s)") plt.xticks(o, oi) plt.subplot(grid[2,0]) plt.plot(e) plt.ylim(0,6) plt.title("E") plt.xlabel("time(s)") plt.ylabel("Volt") plt.xticks(o, oi) plt.subplot(grid[2,1]) plt.plot(f) plt.xlabel("time(s)") # plt.ylim(0,6) plt.title("F") plt.xticks(o, oi) plt.subplot(grid[3,:2]) plt.plot(FullA) plt.ylim(top=6, bottom=0) plt.xlabel("time(s)") plt.ylabel("Volt") plt.title("FullaA") plt.subplot(grid[4,:2]) plt.plot(FullB) plt.ylim(top=6, bottom=0) # plt.ylim(top=6, bottom=0) plt.xlabel("time(s)") plt.ylabel("Volt") plt.title("FullaB") plt.savefig(name) plt.show()

https://www.npmjs.com/package/node-json-xlsx