我有一个关于Backbone.js的get和set函数的简单问题。
1)使用下面的代码,如何直接“获取”或“设置” obj1.myAttribute1?
另一个问题:
2)在模型中,除了默认对象之外,我还可以/应该在哪里声明模型的其他属性,以便可以通过Backbone的get和set方法访问它们?
var MyModel = Backbone.Model.extend({
defaults: {
obj1 : {
"myAttribute1" : false,
"myAttribute2" : true,
}
}
})
var MyView = Backbone.View.extend({
myFunc: function(){
console.log(this.model.get("obj1"));
//returns the obj1 object
//but how do I get obj1.myAttribute1 directly so that it returns false?
}
});
我知道我可以做:
this.model.get("obj1").myAttribute1;
但这是好习惯吗?
defaults
(OBJ1在这种情况下),即相同的对象将会在模型的所有实例共享。当前的做法是将defaults
函数定义为返回要用作默认值的对象的函数。骨架js.org/#Model-defaults(请参见斜体字注释)