{{outlet}},{{yield}},{{render}}和{{partial}}的余烬助手之间有所不同

时间:2015-03-06 23:17:45

标签: javascript ember.js

我对这些余烬助手很困惑。任何人都可以用“更容易”的方式深入解释它们之间的差异吗?

1 个答案:

答案 0 :(得分:5)

如评论中所述,其他问题已经回答过。文档中提供了剩余的一个。请仔细阅读以下详细信息,如果有疑问请告诉我。

以下是解释:

{{outlet}} - >这将提供一个存根/钩子/点,您可以在其中呈现组件(控制器+视图)。可以将其与路由的render方法一起使用。在您的情况下,您可能会有一个细节路线,看起来像这样。这会将带有DetailsView的DetailsController呈现到索引模板的插座'detailsOutlet'中。

{{yield}} - >表示将在另一个模板中呈现的模板区域

{{render}} - >在此处渲染NavigationController和NavigationView。这个辅助程序适用于控制器和视图不会改变的地方,例如导航。

{{partial}} - >部分帮助程序在不更改模板上下文的情况下呈现另一个模板:

{{foo}}
{{partial "nav"}}

上面的示例模板将呈现一个名为“nav”的模板,该模板与其呈现的父模板具有相同的上下文,因此如果“nav”模板也引用了{{foo}},它将打印相同的内容作为上例中的{{foo}}。

如果找不到“_nav”模板,则部分帮助程序将回退到名为“nav”的模板。