最近我开始使用 node.js。在我的一个项目中完成要求时,我遇到了一个问题,我应该能够动态地将一些数据写入 csv 文件,并让它作为弹出窗口提示用户下载(带有保存和取消选项 - 就像我们通常一样看)。谷歌搜索了一段时间后,我决定使用 csv npm 模块https://github.com/wdavidw/node-csv-parser。我能够将数据写入文件并使用此模块保存。我想提示一个弹出窗口来保存这个文件,有/没有保存文件。
我的代码看起来像这样:
// Sample Data
var data = [["id", "subject1", "subject2", "subject3"], ["jack", 85, 90, 68], ["sam", 77, 89, 69]]
// Server Side Code
var csv = require('../../node_modules/csv');
var fs = require('fs');
createCSV = function(data, callback) {
csv().from(data).to(fs.createWriteStream('D:/test.csv')) // writing to a file
}
// Client side call sample
$("#exportToCSV").click(function() {
callToServer.createCSV(data);
return false;
});
就编写 csv 文件而言,这很好用。
- 我想立即提示该文件为用户下载。
- 如果可以在不保存文件的情况下完成此操作,那就太好了。
- 如何像在 PHP 中那样设置内容类型和内容处置
任何帮助是极大的赞赏。-谢谢