在处理程序中声明事件处理程序时,内部处理程序是否可以访问传递给外部处理程序的参数?

时间:2019-05-16 00:33:25

标签: node.js socket.io event-handling

我正在查看一些nodejs代码,发现对我来说看起来不正确。它与套接字的事件处理有关。似乎在on连接处理程序中声明的on消息处理程序使用在连接事件期间传入的套接字对象。消息事件发生后,该变量是否有效?这是代码的概述:

这似乎可行,但我不确定是否正确。

io.on('connection', (socket) => {
  socket.on('message', (msg) => {
    socket.emit('data', databuf)
  }
})

socket.emit语句此时是否具有有效的套接字对象?

1 个答案:

答案 0 :(得分:0)

是的,您可以访问子功能中的所有父功能范围。只要将其放在相同的花括号中,就可以访问。 (或者如果是全局变量)