meteor:easy-search first query返回空

时间:2016-08-06 14:37:49

标签: mongodb meteor meteor-easy-search

使用meteor easy-search我的用户集上有一个索引:

UserIndex = new EasySearch.Index({
    collection: Meteor.users,
    fields: ['username', 'realname', 'bio', 'email'],
    engine: new EasySearch.MongoDB(),
});

我的客户端的查询:

var userResults = UserIndex.search(input).fetch();

我第一次获取输入时,索引返回空,第二次正常工作。当我改变输入时它会这样工作:第一次空,第二次工作正常。我不知道为什么它会那样......任何想法?

1 个答案:

答案 0 :(得分:1)

您必须抽出时间将搜索结果发布到客户端。尝试将搜索包装在Tracker.autorun中,例如:

Tracker.autorun(() => {
  let userResults = UserIndex.search(input).fetch();
  console.log(userResults);
});

进行一次搜索后观察记录的结果;它们将开始为空,但随后结果发布到客户端,您将看到记录的正确结果。