迭代模板中路由的数据

iterate over data from a route in a template

我有一个游标 return 来自路线,我如何将数据用作模板中的上下文?

示例:

router.js

这将 return 包含所有文档的游标,其中 parent 等于 params_id

this.route('my route', {
    path: '/myroute:_id',
    data: function(){
        return MyCollection.find({parent: this.params._id});
    }
});

我的模板应该如何 "iterate" 光标?通常,如果我使用 MyCollection.find({}),我会使用 #each 进行迭代,并通过 TemplateHelper 为上下文命名。我猜

{{#each data}}....{{/each}}

应该是对的,但是不行。

在路由中设置 data 设置模板的上下文。在模板中,通过 this:

访问上下文
{{#each this}}...{{/each}}

或者,如果您希望为数据指定名称,可以 return 路由中的对象:

data: function(){
  return {posts: Posts.find({parent: this.params._id})};
}

然后您可以像这样遍历文档:

{{#each posts}}...{{/each}}