0
案例1:传递模型作为选项在Backbone.js中,通过在选项中传递模型来初始化视图和将模型对象作为参数传递之间有什么区别?
var View1 = Backbone.View.extend({
initiliaze:function(){
}
});
案例2:传递模型作为PARAM并使用它设置这个
var View2 = Backbone.View.extend({
initiliaze:function(model){
this.model = model
}
});
var view1 = new View1({model:someModel})
var view2 = new View2(someModel)
非常感谢,我会仔细阅读文档。我在第二种方式中观察到,当渲染时,模型的所有属性都呈现为DOM元素的属性。任何线索为什么发生这种情况? – Balanarayanan 2014-09-17 07:10:30
@BalaNarayanan这是正常的,当你传递一个对象到视图构造函数时,Backbone会查找这些属性['model','collection','el','id','attributes','className','tagName', 'events']并将其设置在视图中,这里是doc:http://backbonejs.org/#View-constructor,所以尽量避免使用第二种方法,因为它有副作用 – 2014-09-17 10:39:10