【问题标题】:Pass data to Socket.io callback将数据传递给 Socket.io 回调
【发布时间】:2011-06-08 13:14:51
【问题描述】:
client.on('message', function(obj){});

这很好用,但我试图避免嵌套,所以我将回调函数取出如下:

client.on('message', doThis(obj));

function doThis(obj) {}

但这给了我一个错误,说 obj 是未定义的。

如何将消息数据传递给回调函数?

谢谢

【问题讨论】:

    标签: javascript node.js socket.io


    【解决方案1】:
    client.on('message', doThis);
    
    function doThis(obj) {}
    

    f(doThis) 是正确的语法。 f(doThis(arg)) 是错误的语法。

    后者立即使用参数arg(尚不存在)调用doThis。

    这就是为什么它说obj 是未定义的,因为您立即调用doThis。

    f(doThis) 所做的是传递函数而不是函数的返回值

    【讨论】:

      猜你喜欢
      • 2017-08-31
      • 2014-01-21
      • 2023-03-21
      • 1970-01-01
      • 2016-12-09
      • 2020-05-05
      • 1970-01-01
      • 2018-04-29
      相关资源
      最近更新 更多