如何解决您是否总是需要将socket.on包装在io.on连接块中?
我是socket.io的新手,并且意识到每个服务器端事件监听器都包装在io.on
连接块中:
io.on('connection',socket => {
socket.on('event name',callback)
})
我对两件事有些困惑:
- 我是否总是需要将
socket.on
包裹在这种块中?是因为socket
代表引发连接事件的单个客户端吗? - 为什么我应该在块内使用
socket.on
而不是io.on
,因为它们似乎做同样的事情(例如io.on('connection',() => io.on('event name',callback))
)?
解决方法
io.on()
意味着将事件侦听器添加到服务器
io.on('connection',socket => {
socket.on('event name',callback)
})
socket.on()
表示在客户端连接时向客户端添加事件监听器
如果尚未连接客户端,则无法将事件侦听器添加到客户端。 因此,我们要做的是向客户端添加事件侦听器,该侦听器在客户端连接时触发。客户端连接后,我们将向他添加事件侦听器,该事件侦听器将在他发送数据时触发(例如)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。