关于backbone collection的疑问?
var ListView = Backbone.View.extend({
initialize: function() {
if(this.collection) {
this.byId = {};
this.views = [];
this.collection.each(this.registerView,this);
}
},
registerView: function(model) {
var view = new ItemView({model: model});
this.byId[model.cid] = view;
this.views.push(view);
},
render: function() {
var self = this;
this.$el.empty();
_.each(this.views, function(view) {
$_el = view.render().$el;
self.$el.append($_el);
});
}
});
var aView = new ListView({el: "#alist", collection: alist});
aView.render();
代码如上:
this.collection.each方法第二个参数传this,代表什么意思?
第一个参数直接调用registerView方法,方法里没有传model,那model是从哪里来的呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你找找文档吧。
this.collection.each方法第二个参数传this,代表什么意思?
答:我猜这个应该是一个绑定上下文的。
registerView方法,方法里没有传model。
答:就和jquery的each一样。里面他是会传参数的。比如这样$(selector).each(function(index,element))