我有一个顶部导航栏,我在应用程序模板中调用它作为部分。
{{partial "topnav"}}
{{outlet}}
我想在我的一个嵌套路线中删除下游的顶部导航。我该怎么做?
澄清
答案 0 :(得分:4)
Ember将应用ApplicationController
上的当前路线名称和路径设置为属性currentRouteName
和currentPath
。
所以在你的ApplicationController
中,你可以创建一个这样的计算属性:
isCurrentRouteX: Ember.computed.equal('currentRouteName', 'X');
其中X
是您要排除部分的路线。
最后,在您的application.hbs
中,您可以直接执行此操作:
{{#unless isCurrentRouteX}}
{{partial "topnav"}}
{{/unless}}
{{outlet}}
答案 1 :(得分:1)
答案 2 :(得分:0)
这就是你要关闭topnav的路线:
beforeModel: ->
this.controllerFor('application').toggleProperty('topNav')
然后在应用程序控制器中定义一个属性:
topNav: true
你在模板中引用的是这样的:
{{#if topNav}}
{{partial "topnav"}}
{{/if}}
{{outlet}}