Backbone Marionette 和 RequireJS
Backbone Marionette and RequireJS
我正在尝试使用 Backbone.Marionette 和 RequireJS 设置一个新应用程序。我正在跟随 enzo's guide 设置我的路由器和控制器,但在尝试实例化控制器时出现以下错误 - "Undefined is not a function"。
require( ['marionette', './assets/js/router', './assets/js/routeController'], function (Marionette, Router, routeController) {
var MyApp = new Backbone.Marionette.Application();
var controller = new routeController({});
如果我将鼠标悬停在函数参数中的 routeController 上,则显示为 "undefined."
我做错了什么?这让我发疯。
编辑:routeController文件如下-
define(["marionette"], function (Marionette) {
var Controller = Backbone.Marionette.Controller.extend({
initialize : function(options) {
},
start: function() {
},
home : function () {
alert('Hello, welcome home!');
},
});
return Controller;
});
当你从 RequireJS 请求模块时得到 null
,有两种典型的可能性:
1) 中所需的模块未返回某些内容
Controller
在 routeController.js
中是否为非空?将调试器放入其中以确保。
2)某处存在循环依赖
在模块中的某处创建循环依赖非常容易。这里看起来不是这种情况,但如果 router.js
正在做一些时髦的事情,可能会发生。
我正在尝试使用 Backbone.Marionette 和 RequireJS 设置一个新应用程序。我正在跟随 enzo's guide 设置我的路由器和控制器,但在尝试实例化控制器时出现以下错误 - "Undefined is not a function"。
require( ['marionette', './assets/js/router', './assets/js/routeController'], function (Marionette, Router, routeController) {
var MyApp = new Backbone.Marionette.Application();
var controller = new routeController({});
如果我将鼠标悬停在函数参数中的 routeController 上,则显示为 "undefined."
我做错了什么?这让我发疯。
编辑:routeController文件如下-
define(["marionette"], function (Marionette) {
var Controller = Backbone.Marionette.Controller.extend({
initialize : function(options) {
},
start: function() {
},
home : function () {
alert('Hello, welcome home!');
},
});
return Controller;
});
当你从 RequireJS 请求模块时得到 null
,有两种典型的可能性:
1) 中所需的模块未返回某些内容
Controller
在 routeController.js
中是否为非空?将调试器放入其中以确保。
2)某处存在循环依赖
在模块中的某处创建循环依赖非常容易。这里看起来不是这种情况,但如果 router.js
正在做一些时髦的事情,可能会发生。