だからここに取り引きがあります:私は高速プロジェクトでsocket.ioを使用しようとしています。Express Js 4がリリースされた後、エクスプレスジェネレーターを更新し、アプリの初期関数./bin/www
をこれらの変数を含めてファイルに入れます(wwwファイルの内容:http : //jsfiddle.net/avMa5/)。
var server = app.listen(app.get('port'), function() {..}
(それを確認してnpm install -g express-generator
からexpress myApp
そうは言っても、socket.io docsがそれを起動するように要求する方法を覚えておいてください:
var app = require('express').createServer();
var io = require('socket.io')(app);
わかりましたが、推奨されているように、app.js内ではできません。これを機能させるには、。/ bin / wwwで行う必要があります。./bin/wwwでは、これは私がそれを機能させるためにできることです:
var io = require('socket.io')(server)
これで問題ありませんが、io varを他の場所で使用することはできませんwww
。また、socket.io関数をファイルに配置したくありません。
私は、これは単なる基本的な構文であると思いますが、私は仕事にこれを取得することはできません、でも使用していないmodule.exports = server
かserver.exports = server
もmodule.exports.io = app(io)
WWWのファイルに
それで問題は、この/ bin / wwwファイルを私のアプリの開始点としてsocket.ioを使用するにはどうすればよいですか?
./bin/www.
。同じ場所に置いてくださいvar app
。