我是meteor的新手,我已经按照不同的教程解释和使用不同的东西。
似乎有两种处理事件的方法。例如,如果我想管理
标记上的点击,则以下两种方法都有效:
这个出现在hello world meteor app
上'click p'(event, instance) {
}
这是本教程中使用的那个。
'click p': function(event){
}
两者都很完美,如果我同时使用,最后一个将有效。奇怪的是颜色不一样(在崇高的文字上),第二种颜色通常是js颜色,但第一种只有绿色,橙色,其他一切都是白色的(在monokai上)。
我很想使用第二个来获得更好的可见度,但我知道我不应该根据这个做出选择。哪一个是正确的,何时?
答案 0 :(得分:3)
底线:如果您只需要event
,则无关紧要。
函数之间存在2种语法差异,但没有实质性区别:
您正在使用的符号:
funcName(arg1, arg2)
VS
funcName: function(arg1, arg2)
您在编辑器中看到的突出显示颜色差异可能与简写符号有关。这个shorthand notation是 ES2015 的一个功能,是相对较新版本的JS,两者功能相同。它只是语法糖。
arity (参数数量)
该函数用作事件处理程序作为回调。由于JavaScript的动态特性,任何函数都可以使用任意数量的参数调用。参数根据函数的定义分配给参数,并且通过arguments
pseudo-array也可以动态地用于被调用的函数。
将始终使用2个参数调用回调。在带有1个参数的版本中,第二个参数不会绑定到函数中的任何标识符。如果您不需要模板实例,则可以省略第二个参数。