【发布时间】:2011-05-04 20:01:48
【问题描述】:
我刚刚开始使用backbone.js。到目前为止,我真的很喜欢它。
我有这样的事情:
- 模型A
- 型号B
- 视图A
- 视图B
ModelA 持有 ModelB 的集合
如何使用一个按钮构建 ModelB 的 ViewB,单击该按钮会更改集合中下一个 ModelB 实例的属性?
【问题讨论】:
标签: javascript model-view-controller backbone.js
我刚刚开始使用backbone.js。到目前为止,我真的很喜欢它。
我有这样的事情:
ModelA 持有 ModelB 的集合
如何使用一个按钮构建 ModelB 的 ViewB,单击该按钮会更改集合中下一个 ModelB 实例的属性?
【问题讨论】:
标签: javascript model-view-controller backbone.js
var col = this.model.collection;
var nextModel = col.at( col.indexOf(this.model) + 1)
if(nextModel) nextModel.set({whatevar});
您不需要跟踪父集合,主干会为您完成。 您还应该检查您是否在集合的末尾。
【讨论】:
我想我想通了。我会分享,看看其他人的想法,以便其他人受益。
我只是将对父集合的引用传递给集合中的每个模型。
在我的集合中,添加新实例时:
var newModelBInstance = new ModelB( { id: "xxx", ParentCollection: this } );
然后,在我的 ModelB 视图中:
this.model.get("ParentCollection").at(this.model.sortValue + 1).set({ myAttr: false });
【讨论】: