如何在Meteor中使用find和回调

时间:2016-01-03 04:42:55

标签: javascript mongodb meteor mongoose

我在Meteor中有这个功能:

Posts.find({_id: {$ne: ls._id}}, function(err, item) {
    if (err) {return console.error(err)};
    console.log("item: " + String(item));
});

但是我收到了这个错误:

Exception while invoking method 'updateSuggestions' Error: Match error: Failed Match.OneOf or Match.Optional validation

这确实有效:

Posts({_id: {$ne: ls._id}});

所以我认为它与回调函数有关,但我真的不确定是什么。

1 个答案:

答案 0 :(得分:4)

find不会将回调作为参数。

在客户端上,find是同步的,因此不需要回调。在服务器上,find由于流星使用光纤而显示为同步。

无论哪种方式,你都想要这样的东西:

let posts = Posts.find({_id: {$ne: ls._id}}).fetch();
console.log(posts);

有关findfetch的详细信息,请参阅common mistakes