骨干视图实例化问题

时间:2011-12-23 17:36:01

标签: backbone.js

出乎意料的是,以下代码将打印Test1 undefined而不是Test1 Test2

var MyView = Backbone.View.extend({
    initialize: function () {
        console.log(this.collection, this.test);
    }
});

new MyView({collection: "Test1", test: "Test2"});

我做错了什么?

1 个答案:

答案 0 :(得分:4)

只有选项参数中的以下属性才会合并为视图属性。

  

model,collection,el,id,attributes,className,tagName(See the source code

任何其他属性都会放置在视图的选项属性中。

因此,要从initialize方法访问 test 属性,您可以按如下方式更新代码。

console.log(this.collection, this.options.test);