我有一个骨干viev,可以生成一个列表项视图。在render函数中,它遍历集合并使用一些标准代码生成每个子项视图,如下所示:
render: function () {
_(this.collection.models).each(function(item){
$this.appendItem(item);
}, this);
},
我想知道如何从项目列表中访问特定视图,例如在位置0或其他位置。我希望能够从该项目列表视图中触发该特定项目的功能。
答案 0 :(得分:2)
嗯,这取决于appendItem
函数的实现方式,我猜你在那里构建 SubViews 。
您可以将每个创建的SubView存储在一个Array中,这样Array就可以为您提供一种操作SubView的方法。
但是,如果我可以提供一条建议,我会说从开始就是代码味道。您可以操作与SubView关联的Model并使SubView听取此更改,而不是尝试操作具体的SubView。
然后你将开始考虑操纵模型而不是视图。