Requirejs Application()没有initRegionManager方法

Requirejs Application()没有initRegionManager方法,requirejs,marionette,Requirejs,Marionette,我在为一个有骨气的奇怪问题而挣扎。木偶是一个要求 RquireJS的配置如下所示: main.js: require([ 'app' ], function(App) { App.start(); } ); 和app.js: define([ 'marionette' ], function(Marionette) { var app = Marionette.Application(); return app; } ); 但当我想启动应用程序时,我的

我在为一个有骨气的奇怪问题而挣扎。木偶是一个要求

RquireJS的配置如下所示:

main.js:

require([
    'app'
],
function(App) {
    App.start();
}
);
和app.js:

define([
    'marionette'
],
function(Marionette) {
    var app = Marionette.Application();
    return app;
}
);
但当我想启动应用程序时,我的控制台会说:

Uncaught TypeError: Object #<Object> has no method '_initRegionManager' 
在main.js(Startingpoint)中,我需要上面的代码并想启动它。 但它在木偶上失败

当我查看marionette.js时,我可以清楚地看到使用_initRegionManager-Method扩展应用程序的下划线。在木偶对象的原型列表中,我也可以看到该方法

你知道我这里缺少什么吗?

你的require.config({…})应该在main.js中,而且正如Ratweb_所指出的,require.config中不应该有“deps:['main']”。 您可以按照此操作,忽略jquerymobile内容。本质上,它以与代码预期相同的方式进行初始化。 见和

已更新

在你的app.js中

var app = Marionette.Application();
应该是

var app = new Marionette.Application();
您的require.config({…})应该在main.js中,而且正如Ratweb_所指出的,require.config中不应该有“deps:['main']”。 您可以按照此操作,忽略jquerymobile内容。本质上,它以与代码预期相同的方式进行初始化。 见和

已更新

在你的app.js中

var app = Marionette.Application();
应该是

var app = new Marionette.Application();


你还可以粘贴你的require配置吗?编辑了我当前使用的所有js文件我没有看到任何错误,我唯一不明白的是这一行。。。deps:['main'],为什么你有它,在教程的代码示例中没有。好吧,现在我明白了这一行,我认为错误可能是你正在使用的版本,如果你使用的是AMD版本的木偶,那么你不需要填充木偶。尝试两种方法。与AMD版本相比,还包括Backbone.wreqr等。完全相同的错误。你也可以粘贴你的require配置吗?编辑了我当前使用的所有js文件我没有看到任何错误,我唯一不明白的是这一行。。。deps:['main'],为什么你有它,在教程的代码示例中没有。好吧,现在我明白了这一行,我认为错误可能是你正在使用的版本,如果你使用的是AMD版本的木偶,那么你不需要填充木偶。尝试两种方法。与AMD版本相比,还包括Backbone.wreqr等。完全相同的错误。使用deps:['main']只需在另一个文件中启动应用程序,然后启动配置。我也可以在你的链接中这样做。但是我没有改变错误。我在这个例子之后构建了它:你能在github中发布你的代码吗?我能把它分叉并重新处理这个问题,看看有什么问题。更新了你需要修复的东西。。。如果你不盲目地复制和粘贴,你可能会错过一个重要的关键字。谢谢!使用deps:['main']只需在另一个文件中启动应用程序,然后启动配置。我也可以在你的链接中这样做。但是我没有改变错误。我在这个例子之后构建了它:你能在github中发布你的代码吗?我能把它分叉并重新处理这个问题,看看有什么问题。更新了你需要修复的东西。。。如果你不盲目地复制和粘贴,你可能会错过一个重要的关键字。谢谢!