我想向用户显示 socket.io 连接所处的状态。为此,我有一堆这些信息可以告诉用户。
#I can't use `*` because I have some customized events
socket.on 'my_command', =>
set_status "connecting"
socket.on 'connecting', =>
set_status "connecting"
socket.on 'disconnect', =>
set_status "disconnect"
socket.on 'connect_failed', =>
set_status "connect_failed"
有没有办法将所有这些压缩成更小的东西?像这样的东西:
socket.on 'connecting, disconnect, connect_failed', (name_of_event)=>
set_status name_of_event
最佳答案
似乎socket.io不提供这样的短手绑定(bind)。您可以将其写在 for 循环中。
for event in ['connecting', 'disconnect', 'connect_failed']
do (event) =>
socket.on event, =>
set_status event
# or
for event in 'connecting, disconnect, connect_failed'.split(/,\s*/)
do (event) =>
socket.on event, =>
set_status event
关于javascript - 监听socket.io中的多个事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17037618/