什么时候适合将集合传递给主干模型构造函数?如在
var someColl = new SomeCollection();
var m = new SomeModel({}, {collection: someColl});
模型构造函数查询第二个参数以获取集合属性,如果存在,则将其分配给模型集合属性。否则,这些项目会附加我相信的构造函数。有什么例子说明你什么时候以及为什么要做这些事情?
什么时候适合将集合传递给主干模型构造函数?如在
var someColl = new SomeCollection();
var m = new SomeModel({}, {collection: someColl});
模型构造函数查询第二个参数以获取集合属性,如果存在,则将其分配给模型集合属性。否则,这些项目会附加我相信的构造函数。有什么例子说明你什么时候以及为什么要做这些事情?
var someColl = new SomeCollection()
var m = someColl.create({ foo: bar })
# m.collection == someColl
如果您调用create
集合,您将收到新创建的模型(也已添加到集合中)。从那时起,您可以在需要时参考该集合m.collection
我认为在这种情况下引用模型上的集合是最有意义的。您正在向集合中添加一个新模型,并且由于它本质上属于其中,因此使用 . 引用它是有意义的.collection
。
我有时发现传递模型实例化的父视图很有用。尽管这种情况非常罕见,但您可以轻松地执行类似new TabModel(null, {tabGroupView: this});
. 我不会说这是我会经常使用的模式,但传递选项绝对很方便。这就是我喜欢 Backbone 的地方,你可以更自由地做任何你想做的事情。