因此,我正在学习backbone.js,并且目前正在使用下面的示例在视图中迭代一些模型。第一个片段有效,而另一个基于 underscore.js 的片段则无效。为什么?
// 1: Working
this.collection.each(function(model){ console.log(model.get("description")); });
// 2: Not working
_.each(this.collection, function(model){ console.log(model.get("description")); });
我做错了什么,因为我自己看不到它?
this.collection
是一个实例,同时this.collection.each
是一种在幕后迭代正确对象的方法,即.models
集合实例的属性。
话虽如此,您可以尝试:
_.each(this.collection.models, function(model){ console.log(model.get("description")); });
这是完全没有意义的this.collection.each
是一个功能类似于:
function(){
return _.each.apply( _, [this.models].concat( [].slice.call( arguments ) ) );
}
所以你不妨使用this.collection.each
;P
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)