0

解決策が見つからない、小さいながらも厄介な問題があります。

サーバー側では、これがあります:

...
socket.on('join', function (name) 
{
    console.log("Joining: "+name);
    socket.userName = sanitize(name);
}
socket.on('msg', function(m)
{
    console.log(socket.userName+" says: "+m);//This works
});

socket.on('disconnect', function(socket) 
{
    console.log(socket.userName+" has disconnected");//This does not work  
});
...

問題は、socket.userNameを除くすべての私の.on方法で利用できることですsocket.on('disconnect',...

undefineduserName プロパティを取得します。


これは単に不可能ですか?これが最善の方法でない場合は、お知らせください。私はnode.jsが初めてです

4

1 に答える 1

1

disconnectイベントに引数が渡されるとは思わないので、socket変数を効果的に壊しています。そのハンドラーに空の引数リストを使用するだけです。

socket.on('disconnect', function() 
{
  console.log(socket.userName+" has disconnected");
});
于 2013-04-09T18:55:32.443 に答える