2014-11-03 10 views
1

У меня есть структура маршрута, как это:Состояния вложенных маршрутов в EmberJS

this.resource('A',function(){ 
    this.resource('B',function(){ 
    this.route('C'); 
    }); 
}); 

Есть ли способ я могу проверить в A, который вложен маршрут B в настоящее время активен?

Для удобства использования у меня есть навигационная система в A, которая также содержит ссылки для B.C и B.index Но я хочу показать только одну из этих двух ссылок.

ответ

4

Контроллер приложения имеет свойство на нем currentPath. Вы можете использовать это, чтобы узнать, какой путь в маршрутизаторе вы сейчас находитесь. Это весь путь, так что это будет A.B.C или A.B.index.

App.ColorsController = Ember.ArrayController.extend({ 
    needs:'application', 
    atIndex: Em.computed.equal('controllers.application.currentPath', 'colors.index') 
}); 

Пример: http://emberjs.jsbin.com/nobima/2/edit

Смежные вопросы