Publish/subscribe 不工作 - 如何调试?

Publish/subscribe not working - how to debug?

我正在尝试将我的应用程序从自动发布切换到 publish/subsribe。在尝试设置 publish/subscribe 或我的第一个 collection 后,collection 中的 none 项目不再显示,我不知道会发生什么错了。

有人可以发现我下面的代码中的错误或提供有关如何调试此类问题的任何提示吗?

client/routes.js

Router.route('/slug', {
  name: 'route.name',
  title: 'My Page',
  template: 'TemplateName',
  subscriptions: function() {
    this.subscribe('myPublication');
  },
  action: function() {
    this.render();
  }
});

server/lib/collectionLib.js

...
Meteor.publish('myPublication', function() {
  return MyCollection.find();
});

client/myCollection/view/mycollection-list.html

...
{{#each myCollection}}
    ...
{{/each}}
...

哦,我现在明白了,除非你在你的模板助手中做 MyCollection.find() 你需要在路由中做:

data: function () {
  return MyCollection.find({}).fetch();
}

我错过了集合对模板的公开。请参阅此处提供的答案:https://forums.meteor.com/t/publish-subscribe-not-working-how-to-debug/13127/6?u=codejak