好吧,我有一个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
答案 0 :(得分:2)
选项是在创建控制器时传递给控制器的值:
var controller = new LandingPageController({
one: 1,
two: 2
});
传递的对象是您的选项,换句话说,您可以使用(例如)on
访问two
和options.one
属性。