这可能是一个边缘案例,说明ember如何在指向帮助者的链接上添加“活动”类。
我的当前路由器设置如下:
import Ember from 'ember';
var Router = Ember.Router.extend({
location: PortalDevENV.locationType
});
Router.map(function() {
this.resource('portal', function() {
this.route('admin');
this.resource('placements', function() {
this.route('import-debtors');
this.resource('add-debtor', function() {
this.route('debtor-form');
});
this.route('view-debtors');
});
this.resource('debtor', {path: 'placements/view-debtors/debtor/:debtor_id'}, function() {
this.route('agent-notes');
this.route('transactions');
});
});
});
export default Router;
注意我有一个名为“debtor”的资源 - 当它正在渲染到门户网站模板中时 - 我仍然需要出现(就URL而言)是一个孩子“观察 - 债务人”路线......实际上,它在一组单独的模板中更深层次地嵌套。
这个结构似乎运行正常,但它打破了我的面包屑式导航。
当进入“债务人”页面时...我仍然希望“查看债务人”{{link-to}}
帮助者从ember中获取“活跃”类...以及{{link-to}}
的那个导致“观点 - 债务人”。
这可以通过调用路线中的某些功能......或者其他方式来实现吗?
它似乎不是一个常见的余烬约定......但是再一次也许Ember确实以这种方式工作,我做了别的事情打破了它?看看我的设置是否正确。
答案 0 :(得分:1)
您应该能够将活动类绑定到计算属性。假设您所指的{{link-to}}
位于application.hbs
模板中,您可以执行以下操作:
// templates/applictaion.hbs
{{#link-to "view-debtors" class="isDebtorsRoute:active"}}View Debtors{{/link-to}}
// controllers/application.js
export default Ember.Controller.extend({
isDebtorsRoute: function() {
// use this.get('currentRouteName') or this.get('currentPath')
}.property('currentPath')
})
编辑:这是一个jsbin示例http://emberjs.jsbin.com/wuhor/1/edit?html,css,js,output