SocketIo
我用nodejs设置了一个简单的套接字服务器gameIo
gameIo.on("connection", socket => {
socket.on("sign up", () => {
socket.john = "john"
console.log(socket.john) //returns "john"
})
socket.on("sign out", () => {
console.log(socket.john) //returns undefined
})
})
在前端,我先发出一个sign up
,然后发出一个sign out
。但是,socket.john
似乎没有注册新值。
为什么会这样?
谢谢!
回答如下:向每个事件处理程序添加console.log(socket.id)
,以查看每次是否都看到相同的socket.id
。如果确实是同一个套接字对象,则在套接字对象上添加自定义属性应该可以正常工作,因此您看到的似乎是两个不同的套接字对象。
SocketIo
我用nodejs设置了一个简单的套接字服务器gameIo
gameIo.on("connection", socket => {
socket.on("sign up", () => {
socket.john = "john"
console.log(socket.john) //returns "john"
})
socket.on("sign out", () => {
console.log(socket.john) //returns undefined
})
})
在前端,我先发出一个sign up
,然后发出一个sign out
。但是,socket.john
似乎没有注册新值。
为什么会这样?
谢谢!
回答如下:向每个事件处理程序添加console.log(socket.id)
,以查看每次是否都看到相同的socket.id
。如果确实是同一个套接字对象,则在套接字对象上添加自定义属性应该可以正常工作,因此您看到的似乎是两个不同的套接字对象。