我有一个没有参数的回调,它存储在没有执行的对象中:
{callback:function(){ do my thing }}
然后我意识到我需要发送一些参数,并且所有突然的JS都在发现时执行该函数:
{callback:(function(e){ do my thing with e })(event)}
有没有办法在不立即执行的情况下执行此操作?
答案 0 :(得分:4)
问题在于您使用(event)
调用该函数的第二个代码段。
您应该只能删除它,并且在执行回调时,如果事件传递给回调,它将是e
:
{callback:function(e){ do my thing with e }}
答案 1 :(得分:0)
由于这里的括号 - (event)
此参数在函数声明中定义 - function(e)
您需要在客户端代码执行回调的任何地方传递此参数,例如
if(thisCondition) {
callback(event)
}