[英]Anybody can help me analyze these code the backbone each function meanings?
现在,我们可以假设app.Todos是一个集合。 然后假设我们触发了filterAll函数。
filterOne : function (todo) { console.log(todo); todo.trigger('visible'); }, filterAll : function () { console.log(app.Todos); app.Todos.each(this.filterOne, this); },
在我阅读了关于每个的下划线文档后,他们说each_.each(list,iterator,[context]),迭代一个元素列表,然后依次产生一个迭代器函数。
但filterAll函数使用每个迭代函数this.filterOne? 那是什么意思? 这个filterOne不是列表元素,请帮帮我。
谢谢
从_.each
文档中,您可以看到_.each
,如下所示
_.each(list, iterator, [context])
这里列表也可以对应模型。
所以这可以写成
`app.Todos.each(function() { } , this);`
**OR**
_.each(app.Todos.models, function() { } , this);
所以这相当于
app.Todos.each(function(todo) {
console.log(todo);
todo.trigger('visible');
}, this);
要么
_.each(app.Todos.models, function(todo) {
console.log(todo);
todo.trigger('visible');
}, this);
这个filterOne不是列表元素,请帮帮我。
下划线函数在骨干实例上实现为方法 。 所以你的
app.Todos.each(this.filterOne, this);
相当于
_.each(app.Todo.models, this.filterOne, this);
或下划线的对象包装器 :
_(app.Todo.models).each(this.filterOne, this);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.