ember.js - EmberJs路由

标签 ember.js requirejs

我正在尝试创建 EmberJs/RequireJs 应用程序并遇到问题。根据示例,我这样定义了我的 app.js:

(function () {
define(['../app/routing'], function (routing) {
    return {
        Router: routing,
        LOG_TRANSITIONS: true
    };
});
}());

,routing.js 为:

(function (root) {
    define(["ember"], function (Ember) {
        var router = Ember.Router.extend({
            todosRoute: Ember.Route.extend({
                viewName: 'todos',
                model: function(){
                    return this.todos.find('todos');
                }
            })
        });
        return router;
    });
}(this));

和main.js:

require(['app', 'ember'], function(app, Ember){
            var app_name = config.app_name || "app";
            root[app_name] = app = Ember.Application.create(app);

我遇到的问题是,无论我如何定义路由,我都无法让它们工作,emberJs 还报告说,这样的路由不存在。

如何定义路由并将它们作为参数对象传递给 Application.create(obj) ?如果可能的话,我仍然想将它们保存在单独的文件中。 请注意,routing.js 应该在 main.js 之前执行,因此 App 对象不可用,就像教程中建议的那样

最佳答案

js/app.js

App = Ember.Application.create();

App.Router.map(function() {

  this.route('index', {
    path: '/'
  });

  this.route('about');

});

App.IndexRoute = Ember.Route.extend({
  //
});

我知道您希望将这些全部放入不同的文件中,但是您是否能够在简单的环境中使事情正常工作?

至于 Require JS 的东西...我对此不太了解 - 但这里似乎有一个线程:Ember.js and RequireJS这就是问题的根源。

关于ember.js - EmberJs路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24147887/

相关文章:

ember.js - 如何在 ember^2.0 的控制台上删除这些弃用内容

url - 在不破坏 URL 的情况下将 ember-cli 应用程序部署到 S3

jquery-ui - requirejs + jqueryui = $.widget 未定义

node.js - 在 Backbone 和 RequireJS 中使用listenTo

javascript - AngularJS 与 RequireJS 标签显示 breifly

javascript - 在没有 Ember 应用程序的情况下编译 Ember 模板字符串并以编程方式运行它?

javascript - 如何在 Ember.js 中保存具有多对多关系的模型?

javascript - 返回第一个模型 ember js 模板

javascript - 返回模块时 Backbone Marionette 布局区域未关闭

html - RequireJS 文本插件 : cannot load HTML from other domain