2016-04-11 4 views
1

Я реализовал пользовательскую функцию в компоненте, который берет информацию из URL-адреса и возвращает массив с правильным именем и ссылкой, чтобы вести себя как сухарик. Проблема в том, что на последнем этапе процесса приложение должно выполнить переход к другому маршруту/модели в совершенно другом URL-адресе.Эмбер. Связь между компонентами. Breadcrumbs

Как я могу отобразить пачку в конечном шаблоне (на другом маршруте)?

ответ

0

Если вы используете EmberSimpleAuth, просто хранить его в сессии:

App.BreadcrumbController = Ember.Controller.extend({ 

    session: Ember.inject.service(), 

    //... 

    this.get('session').set('data.breadcrumbs', breadcrumbs)  

}); 

App.anotherController = Ember.Controller.extend({ 

    session: Ember.inject.service(), 
    breadcrumbs: Ember.computed.alias(this.get('session.data.breadcrumbs')), 

}); 

Если нет, то вы можете хранить массив сухарей в контроллере приложения. Затем вы можете использовать его там, где хотите.

App.BreadcrumbController = Ember.Controller.extend({ 

    //inject application controller so you can set a property on it 
    application: Ember.inject.controller(), 

    //... 

    //then once you have the breadcrumbs, store them in the application controller 
    application.set('breadcrumbs', breadcrumbs)  

}); 

App.anotherController = Ember.Controller.extend({ 

    //inject application controller and get the breadcrumb property 
    application: Ember.inject.controller(), 
    breadcrumbs: Ember.computed.alias(application.get('breadcrumbs')), 

}); 
Смежные вопросы