marionette.js控制器初始化中的this.options参数

时间:2013-12-09 22:56:24

标签: javascript controller marionette

好吧,我有一个marionette.js控制器,它有一个初始化函数(此代码由其他人传递给我)。在这段代码中,我发现initialize函数包含一个@options参数。它从何而来?有没有人知道,例如,在路由器中,你可以以某种方式传递控制器任何参数?顺便说一下这是我的文件(我使用的是require.js和node):

define (require, exports, module) ->
   # framework dependencies
   Marionette = require 'Backbone.Marionette'

   # Actions
   ShowLandingPageAction = require '../actions/show-landing-page-action'

   class LandingPageController extends Marionette.Controller
      initialize: (@options)->
         @region = options.region

      showLandingPage: ->
         console.log '--showLandingPage--'
         action =  new ShowLandingPageAction
         action.execute @region
         @trigger 'set:active:home'

   module.exports = LandingPageController

1 个答案:

答案 0 :(得分:2)

选项是在创建控制器时传递给控制器​​的值:

var controller = new LandingPageController({
    one: 1,
    two: 2
});

传递的对象是您的选项,换句话说,您可以使用(例如)on访问twooptions.one属性。