5

我正在学习 Backbone,并且在 on() 函数上遇到了一些问题。但实际上这是一个非常基本的 JavaScript 问题。

为什么下面的第一行代码有效,而第二行无效?使用第二行,渲染函数永远不会被触发。注意括号。

作品

this.collection.on( 'reset', this.render, this );

失败

this.collection.on( 'reset', this.render(), this );
4

1 回答 1

9

this.render()执行函数(因此在您的情况下,您正在传递从此函数返回的数据),而this.render处理程序是函数。

于 2012-06-30T14:00:15.973 回答