在钩子之前从集合中的Meteor setTimeout

时间:2017-06-02 03:55:11

标签: javascript meteor

只有在2分钟后myCollection中尚未填充category属性时,此Meteor服务器代码才需要发送电子邮件。

但无论如何,它每次都会发送电子邮件。任何建议,以便只有在{2}分钟后category仍然空白时才发送电子邮件? thx

let myFunc = function (){
  myCollection.inert({lastName: 'john'});
  //run other code to populate the myCollection.category
}

myCollection.before.insert(function (userId, doc) {
  if (userId === '8mmjdueej') {
     lib.alertAdmin(doc);
   }
});

   'alertAdmin': function (Obj) {
      Meteor.setTimeout(function () {
          let category = myCollection.find({lastName: Obj.name}).bigCategory;
          if (!category) {
            lib.sendEmail(null, 'failed to get category for: ' + Obj.name);
          }
        },
        120000);
    },

1 个答案:

答案 0 :(得分:0)

let category = myCollection.find({lastName: Obj.name}).bigCategory;

这可能是问题所在。 find返回Mongo的光标,而不是文档本身。您可以使用findOne