javascript - Ember.js 新的路由 api

标签 javascript ember.js url-routing ember-router

我目前正在从 ember 迁移我的应用程序 1.0.0-pre21.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 在两个 Controller 及其各自的 socket 上映射 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 将多个 Controller 映射到同一 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 新的路由 api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14418337/

相关文章:

javascript - Vue.js PWA 插件部署到子文件夹时不加载 service-worker.js (Github Pages)

javascript - 正则表达式拆分分隔符,内容不含空格

javascript - 如何在移动应用程序中明智地显示 xml 内容页面?

ember.js - 如何在对象 Controller 中访问 ("init"上的 ember 模型

html - 如何停止打印媒体的 Bootstrap 表背景颜色设置覆盖我的类(class)设置

wordpress - 在 WordPress PHP 中将长域 URL 重写为短域 URL

javascript - 如何设置下一个滚动事件的延迟

javascript - Ember js 中的进度条

javascript - 当路由到具有不同参数的同一页面时,NextJS 初始状态不会更新

asp.net - ASP.NET URL重写