2016-04-11 4 views
0

node.jsの本を読んでノードに手を入れようとしていますが、サーバー側に書かれているこのコードに遭遇しました。イベントエミッタパターンはどのようにNode、sockets.ioで動作しますか?

var socketio = require('socket.io'); 
socket.on('rooms', function() { 
socket.emit('rooms', io.sockets.manager.rooms); 
}); 

この仕組みはわかりません。私がこのメソッドを理解している限り、ルームのイベントをリッスンするイベントリスナーを登録/追加してから、ルームイベントを返す関数をコールバックします。それはどのように動作するのですか?その意味がない...ソケットオブジェクトはルームイベントをいつ放出するのですか?

答えて

0

これは、相手側がトリガーするカスタムイベントです。このサーバー側の例では、サーバーはクライアントがroomsイベントを送信するのを待機し、コールバックではroomsイベントで応答します。クライアントはまた、roomsイベントを受信することもできます。

これらのイベントには、必要に応じて名前を付けることができます。これらのイベントの両方がroomsという名前である必要はありません。

関連する問題