Backbone.js 主干木偶模块
我包含以下代码(代码由CoffeeScript生成):Backbone.js 主干木偶模块,backbone.js,marionette,Backbone.js,Marionette,我包含以下代码(代码由CoffeeScript生成): 在我看来,这段代码应该可以工作,但是核心模块的函数似乎从未执行过(test1打印到控制台,而test2没有)。我缺少什么吗?在模块启动之前,模块的定义函数不会执行。这可以通过调用application.start()并让应用程序启动所有模块来实现,也可以通过调用application.module('core').start()直接启动模块来实现 其他两项说明: 无需返回module.TodoItem。。。您只需分配module.TodoI
在我看来,这段代码应该可以工作,但是核心模块的函数似乎从未执行过(test1打印到控制台,而test2没有)。我缺少什么吗?在模块启动之前,模块的定义函数不会执行。这可以通过调用
application.start()
并让应用程序启动所有模块来实现,也可以通过调用application.module('core').start()
直接启动模块来实现
其他两项说明:
返回module.TodoItem
。。。您只需分配module.TodoItem=…
,它将在应用程序.core
命名空间中可用module.TodoItem=backbone.Model.extend({…})
会更像主干习惯用法我根据这个JavaScript的结构,以及我刚才指出的两项,猜测您正在使用CoffeeScript生成这个脚本?如果是这样,请忽略这两项,因为您将无法更改它们。在模块启动之前,不会执行模块的定义函数。这可以通过调用
application.start()
并让应用程序启动所有模块来实现,也可以通过调用application.module('core').start()
直接启动模块来实现
其他两项说明:
返回module.TodoItem
。。。您只需分配module.TodoItem=…
,它将在应用程序.core
命名空间中可用module.TodoItem=backbone.Model.extend({…})
会更像主干习惯用法console.log('test1');
application.module('core', function(module, application, Backbone, Marionette, $, _) {
console.log('test2');
return module.TodoItem = (function(_super) {
__extends(TodoItem, _super);
function TodoItem() {
return TodoItem.__super__.constructor.apply(this, arguments);
}
return TodoItem;
})(Backbone.Model);
});