Ember.js новый API маршрутизации

В настоящее время я переношу свое приложение с ember 1.0.0-pre2 на 1.0.0-pre4, и у меня возникают проблемы с новым API маршрутизации.

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

У меня всегда есть блок чата сбоку от остальной части приложения, мой шаблон приложения выглядит примерно так:

<script type="text/x-handlebars" data-template-name="application">
    <div id="main-content">
         <aside>
            {{outlet chat}}
         </aside>
         {{outlet main}}
     </div>
</script>

Со старой конфигурацией маршрутизатора сопоставление URL-адресов на обоих контроллерах и их соответствующих выходах.

Router : Ember.Router.extend({
    root: Ember.Route.extend({
        index: Ember.Route.extend({
            route: '/',
            connectOutlets: function(router, event) {
                router.get('applicationController').connectOutlet('main', 'main');
                router.get('applicationController').connectOutlet('chat', 'chat');

            }
        })
    })

Как я могу перенести этот код в новый API или изменить то, как я закодировал его, если это плохой дизайн для Ember.

Я думаю, что могу обобщить свой вопрос: как мы можем использовать новый API маршрутизации для сопоставления нескольких контроллеров, отвечающих за разные части страницы, с одним и тем же URL-адресом.

Спасибо


person Arnaud Gourlay    schedule 19.01.2013    source источник


Ответы (1)


Следует примеру согласно документации[1].

App.Router.map(function() {
    this.resource('index', {path: '/'});
});

App.IndexRoute = Ember.Route.extend({
    renderTemplate: function(controller, model) {
        this.render('main', {outlet: 'main'});
        this.render('chat', {outlet: 'chat'});
    }
});

[1] – http://emberjs.com/guides/routing/

person Nycholas Oliveira Oliveira    schedule 19.01.2013