ええと...私は最初のexpress + socketioノードアプリを起動して実行しました。
新しいエントリが追加されたときに、それらのページに表示されるすべての「リスト」をサーバープッシュで更新する必要があるため、私のアプリのほぼすべてのページで Socketio が使用されています。
したがって、メインの app.js ファイルと、すべての route.js ファイルを含むルート ディレクトリを取得しました。これらのページで異なることが発生するため、ルートごとに異なる socketio イベント + 関数が必要になります。
質問は、socketio オブジェクトを初期化するためにエクスプレス サーバーにアクセスする方法です。
// app.js
var server = app.listen(app.get('port'), function(){...});
var io = socketio.listen(server);
// socket.io code here
// the code from here on should be different for each route.js file
または言い換えれば:
socket.io のすべてのイベントおよび関数定義を対応するルート ファイルに除外して、ページごとに異なる socket.io イベントおよび関数が定義されるようにするにはどうすればよいですか? もちろん、ソケットは常に同じポートで実行できます (問題ないことを願っています!)。
理解できたと思います...説明するのは少し難しいです。
よろしくパトリック