我认为这应该是一个非常简单的解决方案,我只是无法弄明白。 我的ApplicationRoute中有这个模型:
App.ApplicationRoute = Ember.Route.extend({
model: function() {
return {
sideNav: data.side,
breadcrumbs: Util.breadcrumbs()
}
}
});
申请模板:
<script type="text/x-handlebars" data-template-name="application">
{{outlet}}
</script>
概述模板:
<script type="text/x-handlebars" data-template-name="overview">
{{partial side}}
</script>
_side partial:
<script type="text/x-handlebars" id="_side">
{{#each model.side}}
<i {{bindAttr class="iconClass"}}></i><p>{{label}}</p>
{{/each}}
</script>
当我加载我的概述路线时,那里的东西会加载,但是应用程序模型不会像我希望的那样应用于侧面部分...可能有更好的方法来执行此操作。谢谢!
答案 0 :(得分:1)
看起来你有两个问题:
side
而不是sideNav
。ApplicationRoute
模板中的overview
模型(可能有自己的路径和控制器)部分不会改变上下文,因此它们不会增加任何复杂性。例如,如果我们将自己限制在application
模板,则以下内容将起作用:
App.ApplicationRoute = Ember.Route.extend({
model: function() {
return {
foo: 'bar'
};
}
});
<script type="text/x-handlebars" data-template-name="application">
{{partial partial}}
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="_partial">
{{foo}}
</script>
但是,如果您希望获得嵌套路线内的application
模型,则需要提出要求。例如,在(默认)index
路线内,您可以添加以下内容:
App.IndexRoute = Ember.Route.extend({
model: function() {
return this.modelFor('application');
}
});
<script type="text/x-handlebars" data-template-name="index">
{{partial partial}}
</script>