我正在创建一个具有用户登录系统和按钮的流星应用程序。用户可以按下按钮将其用户名添加到集合中,直到超级用户将其删除。
每次用户点击按钮时,我都会注意到,并以.csv文件或类似格式下载该信息。因此,例如,用户A在时间t1按下按钮,用户B在时间t2按下它,用户C在t3按下它,然后用户A在时间t4再次按下它。我想以一种很好的格式导出这些交互的记录。 ***注意:按钮点击不会存储在一个数组中,因此这个问题(How to export JavaScript array info to csv (on client side)?)的解决方案对我没有帮助 - 除非我误解了某些内容,这是完全有可能!
我开始编写本教程,用于从流星应用程序(https://themeteorchef.com/tutorials/exporting-data-from-your-meteor-application)导出数据,但很快变得复杂,我不知道如何使用此方法跟踪按钮点击。
这似乎是一项相对简单的任务。我错过了一种简单的解决方法或常用方法吗?谢谢!
答案 0 :(得分:1)
对不起延误,假期让我离开了。
由于您正在使用Meteor,因此您可以访问一个出色的Mongo API(docs),它允许您以您喜欢的任何方式查询和转换数据。因此,只需查询您在Meteor中定义Mongo集合的任何内容(我将以ButtonClicks
为例)
let buttonClicks = ButtonClicks.find({}).fetch(); // Finds all button clicks
然后转换数据并使用Node fs
(docs)包将转换后的数据写入.csv文件。
buttonClicks = buttonClicks.map((click) => {
// transform your json to csv format here.
// I encourage you to write this yourself ;).
});
fs.writeFile('buttonClicks.csv', buttonClicks, (err) => {
if (err) throw err;
console.log('The file has been saved!');
});