Jquery Backbone.js on(),最后一个是指什么?
我正在学习主干,我正在试图弄清楚我从哪个库中获得“on”函数。我以为是jQuery,但如果是这样的话,我不理解API。有人能解释一下“开启”功能吗?或者把我和一些文档联系起来。第一个参数是事件。第二个参数是被调用的函数。最后一个“this”指的是什么(我假设是调用类),为什么需要它?这是我直接从Addy Osmani获得的代码,这是AppView:Jquery Backbone.js on(),最后一个是指什么?,jquery,backbone.js,Jquery,Backbone.js,我正在学习主干,我正在试图弄清楚我从哪个库中获得“on”函数。我以为是jQuery,但如果是这样的话,我不理解API。有人能解释一下“开启”功能吗?或者把我和一些文档联系起来。第一个参数是事件。第二个参数是被调用的函数。最后一个“this”指的是什么(我假设是调用类),为什么需要它?这是我直接从Addy Osmani获得的代码,这是AppView: initialize : function() { this.input = this.$('#new-todo');
initialize : function() {
this.input = this.$('#new-todo');
this.allCheckbox = this.$('#toggle-all')[0];
this.$footer = this.$('#footer');
this.$main = this.$('#main');
window.app.Todos.on('add', this.addOne, this);
window.app.Todos.on('reset', this.addAll, this);
window.app.Todos.on('change:completed', this.filterOne, this);
window.app.Todos.on("filter", this.filterAll, this);
window.app.Todos.on('all', this.render, this);
app.Todos.fetch();
},
本例中的on方法来自主干网的事件模块。它接受三个参数——事件名称、函数和上下文。上下文决定函数中“this”的值
Todos.on(“filter”,this.filterAll,this)
您只需在函数filteral中要求“this”的值应该是您的视图实例对象。on(事件、回调、[context])
根据上下文,最后一个[context]参数是将传递给回调函数的可选上下文
在Addy的ToDo示例中,this正在传递对单击的ToDo视图的引用:
//通过为列表创建视图,将单个待办事项添加到列表中,然后
//将其元素附加到“”。
addOne:函数(todo){
var view=newapp.TodoView({model:todo});
$(“#待办事项列表”).append(view.render().el);
},
如果您指的是window.app.Todos.on('all',this.render,this);-它将在Todos集合发生任何更改时触发。(添加、重置、更改等)