如何读取使用yeoman编写的文件?

时间:2018-09-10 15:58:16

标签: javascript node.js yeoman

我正在使用ProductView.aggregate([ { $match: { productId: '5b8c0f3204a10228b00a1745' } }, { $project: { day: { $substr: ["$createdAt", 0, 10] } } }, { $group: { _id: "$day", count: { $sum: 1 }, time: { $avg: "$createdAt" }, } }, { $sort: { _id: 1 } }, { $project: { date: '$_id', views: '$count', }, }, { $group: { _id: null, stats: { $push: "$$ROOT" } } }, { $project: { stats: { $map: { input: [ "2018-09-01", "2018-09-02", "2018-09-03", "2018-09-04", "2018-09-05" ], as: "date", in: { $let: { vars: { dateIndex: { "$indexOfArray": [ "$stats._id", "$$date" ] } }, in: { $cond: { if: { $ne: [ "$$dateIndex", -1 ] }, then: { $arrayElemAt: [ "$stats", "$$dateIndex" ] }, else: { _id: "$$date", date: "$$date", views: 0 } } } } } } } } }, { $unwind: "$stats" }, { $replaceRoot: { newRoot: "$stats" } } ]).exec((err, result) => ...) 来写文件,我相信它正在被写到内存文件系统中:

copyTpl

现在我需要计算该文件的哈希值,并将其写入另一个文件,我该如何读取?从节点使用this.fs.copyTpl(this.templatePath('myfile.xml'), `myfile.xml`, params); 无效,因为该文件在磁盘上尚不存在,并且fs似乎也不起作用,表示该文件不存在。

1 个答案:

答案 0 :(得分:0)

this.fs.copyTpl(
      this.templatePath('myfile.xml'),
      this.destinationPath('D:/public/myfile.xml'),
      params
    );

基本上,这是将文件存储到目标路径,您现在可以从该路径中使用nodejs的fs模块来读取该文件。