2

我的 HTML 代码是:

{{#each slides}}
   {{> slide}}
{{/each}}

我的 javascript 助手是:

Template.draggables.slides = function() {
return LiveSlides.find();
};

我已经尝试{{#isolate}}{{#each}}声明,以及子模板,以及两者的组合,以及更多的排列。正在重新渲染所有父模板,并且针对集合中的每个对象。因此,在第一次加载网页时,如果集合中有 10 个对象,则将呈现所有父模板。我正在记录这一切。我很确定它不会以常规 Session 变量的方式运行——我认为这是集合表现得很有趣。任何人都知道问题可能是什么?

更新——我刚刚创建了一个新的空白应用程序来测试,我仍然在让父模板重新渲染它们自己——这里的所有应用程序都有:

 <body>
  {{> parent}}
</body>

<template name="parent">
    {{>child}}
</template>

<template name="child">
    {{#each desks}}
        <li>{{name}}</li>
    {{/each}}
</template>


Template.parent.rendered = function() {
    console.log('parent rendered');
};

Template.child.desks = function() {
    return Desks.find();
};
4

1 回答 1

1

我认为这里发生的事情是为每个渲染的子调用父“渲染”回调。所以父级实际上并没有再次被放回 DOM 上。其渲染的回调正在被孩子们触发。如果您要完成某个特定的用例,请告诉我,我会尝试通过一些建议来扩展我的答案。

于 2013-02-27T23:17:00.657 回答