【发布时间】:2015-04-17 15:04:10
【问题描述】:
我对 Iron Router 和 Collections/publish/subscribe 缺乏相关文档感到沮丧。我有一些 Publish 语句(在站点中代码的 isServer 部分)将数据从集合返回到客户端。我这样称呼他们:
Router.route('/project/:_id', {
path: '/project/:_id',
template: 'project',
waitOn: function(){
return Meteor.subscribe( "getProject", this.params._id );
}
此时,我有一个能够向客户端发送已发布数据集的服务器。我有一个客户要求订阅该数据集。这应该是我需要的功能页面,对吧?但是,当我在 Route 中不包含这样的 data: 字段时,Iron Router 会向我吠叫:
data: function() {
return Projects.find();
}
我为什么需要数据:如果我应该已经在 Meteor.subscribe 上拥有我想要的数据?有人可以解释为什么这是必要的吗?我不希望模板中的 Projects.find() 结果,我想要 Meteor.subscribe("getProject") 的结果。尝试在 data: 部分中调用 getProject,但它想要一个集合而不是发布/订阅。
这令人沮丧,因为这似乎是最基本的任务:渲染页面并使用服务器提供的结果集。我还缺少什么吗? Basic LAMP 可以非常轻松地呈现数据。
【问题讨论】:
标签: meteor iron-router