3

我正在检查 Backbone Marionette,它似乎对我当前的项目很有希望。但是,在添加模块时,它们似乎会自动启动,而不管 startWithParent 设置如何。这是我遇到问题的一段代码(其中一部分实际上是从 Marionette 文档中复制的):

var app = new Backbone.Marionette.Application();

var fooModule = app.module('fooModule', {
      startWithParent: false,

      define: function(){
          console.log('I should not auto start');
      }
    });

app.start();

我期待“我不应该自动启动”不会出现在我的控制台中,但确实如此。在我看来,我应该执行...

app.module('fooModule').start()

...在此消息出现之前。

我正在使用 Backbone.Marionette 1.0.2、Backbone 1.0 和 Underscore 1.4.4。

关于为什么会发生这种情况的任何线索?感谢您的帮助!

4

1 回答 1

5

请注意,模块初始化程序在模块启动时被调用,该define函数在那里允许模块定义,但它的执行并不意味着模块已启动。

我做了一个小提琴来解释我的意思:http: //jsfiddle.net/Axg27/2/

于 2013-05-07T11:12:08.903 回答