前提・実現したいこと
現在Node.jsの勉強として、Socket.IOを使ってチャット機能を持ったWebページの作成を行っています。
そこで、参加者が任意の名前で参加するためのログイン機能の実装に向けて、
とりあえずSocket.IOの通信のID(?)と、参加者が入力した名前を追加するオブジェクトを作成したいです。
発生している問題・エラーメッセージ
下記の変更前のコードでは複数アクセス者のIDを取得設定できていたので、
これをベースにして、IDをキーとして参加者のIDと名前を取得できるようにしたいです。
しかし、userInfo[userid]がundefinedになってしまってエラーになるので、
正しい記法を教えていただきたいです。
該当のソースコード
javascript
1//変更前 2socket.on('login', function(userInfo){ 3 let userid = userInfo.userID; 4 userInfo[userid].uid = userid; 5 count = Object.keys(userInfo).length; 6 io.emit('setCount', { 7 count: count 8 }) 9 });
javascript
1//変更後 2socket.on('login', function(userInfo){ 3 let userid = userInfo.userID; 4 userInfo[userid].uname = userInfo.userName; 5 userInfo[userid].uid = userid; 6 count = Object.keys(userInfo).length; 7 io.emit('setCount', { 8 count: count 9 }) 10 });
初歩的な質問だと思うので、調べろと言われるかと思うのですが、
調査した限りではこのやりたいことの実現にぴったりのものがわかりませんでした。
お手数おかけしますが、よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。