编程语言
首页 > 编程语言> > javascript – Ember.js新路由api

javascript – Ember.js新路由api

作者:互联网

我目前正在将我的应用程序从ember 1.0.0-pre2迁移到1.0.0-pre4,我遇到了新的路由API问题.

我的用例似乎没有被文档中的新指南所涵盖.

我总是在应用程序其余部分旁边的聊天div,我的应用程序模板看起来像这样:

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

使用旧路由器conf映射两个控制器及其各自插座上的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');

            }
        })
    })

如果Ember的设计不好,我该如何将此代码迁移到新API或更改我编码的方式.

我想我可以将我的问题概括为:我们如何使用新的路由API将几个控制器映射到同一个URL,从而处理页面的不同部分.

谢谢

解决方法:

按照文档[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/

标签:javascript,ember-js,url-routing,ember-router
来源: https://codeday.me/bug/20190703/1371880.html