如果我想调用Backbone视图内的函数,我必须像这样调用它。BackboneJS - 使用关键字内部视图
this.functionName()
如果我要打电话内forEach
或者jquery's each
功能相同的功能,this
是指不同的上下文这里。所以我需要保留视图对其他变量的引用,我必须使用它像下面的东西。
refresh: function() {
var view = this;
$("#list").each (function() {
view.functionName();
})
}
最后,如果我看看我的观点,我宣布几乎所有的功能。有没有人找到更好的替代方案?
不是这是一个常用的做法,实质上是正确的,因为js中的作用域方法。一般var that = this;被使用:)使用视图作为变量名可能会混淆! – beNerd
所以大家都这样做。持有参考查看每个功能开始!很高兴知道。谢谢。 – user10