javascript - 我如何在 Ember.Router 中设置 ApplicationController

标签 javascript ember.js ember-old-router

我还有其他可能处理 Ember.Router Controller 和 View 吗?我的应用程序结构通常依赖于 require.js,它负责处理相应的依赖项。

在我的示例中,我将 App.ApplicationController 作为主路由器 Controller 。

这是一个 jsfiddle:http://jsfiddle.net/mediastuttgart/uMKGt/1/

但是有机会手动设置吗?我发现了这条提交信息 https://github.com/emberjs/ember.js/commit/be69395f5eec4187b1df052d7386bcda45f79475在我可以看到的地方,如何设置 Controller 并手动查看(无论如何都无法正常工作)。但找不到任何示例,例如:

App = Ember.Application.create();

App.MyController = Ember.Controller.extend({});
App.MyView = Ember.View.extend({});

Router = Ember.Router.extend({
    applicationController : App.MyController,
    root : Ember.Route.extend({
        index : Ember.Route.extend({
            route : '/',
            connectOutlets : function (router) {
                router.get('applicationController').connectOutlet(App.MyView);
            }
        })
    }),
    ...
});

编辑

我想更详细地解释一下。当我们使用 require.js 来管理或依赖时,我们有多个 Controller ,它们负责整个应用程序的各自部分。假设我们有一个时事通讯注册表单。用于此场景的 Controller 结构为

- app
-- controller
--- newsletter
---- signup.js
--- cart
--- checkout
-- view
-- model
-- router
-- template

当我们使用自定义函数生成命名空间 Em.Provide('App.Controller.Newsletter'); 时,它会在 App.Controller.Newsletter 中创建一个对象。该对象现在用作我们整个时事通讯应用程序的 Controller 基础。从 App.Controller.Newsletter.Signup = Ember.Controller.extend({}); 开始,我们需要将此实例作为路由器的“ApplicationController”传递。如您所见,我们不能只使用 App.ApplicationController 为 Ember.Router 实例化 Controller 。

最佳答案

对requirejs一无所知,但我认为唯一的事情就是定义一个

App.ApplicationController = Ember.Controller.extend({...behavior here...})

然后,在调用时

App.initialize()

然后框架会在路由器中自动注入(inject)这个 Controller 。

关于javascript - 我如何在 Ember.Router 中设置 ApplicationController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11192668/

相关文章:

javascript - 使用 javascript 打开页面时立即显示上传对话框

javascript - jquery mobile 中的按钮无法按预期工作

javascript - 当 if 语句为 true 时,else 语句仍在运行

javascript - 使用javascript在两个aspx页面之间传递数据

rest - 记录保存,使用自定义 REST 适配器 promise 拒绝

ember.js - 如何在 Router v2 中为路由渲染多个模板

javascript - 如何仅将模型 [0] 传递给 Ember 模板中的组件?

ember.js - 在 Ember.js 中退出路由时如何*不*销毁 View

ember.js - Ember 路由器 - 如何处理 404(未找到)路由?