在Express 4和express-generator的/ bin / www中使用

所以这是交易:我正在尝试在一个快速项目中使用socket.io。发布Express Js 4之后,我更新了express-generator,现在应用程序的初始功能进入./bin/www文件中,包括那些vars(www文件内容:http : //jsfiddle.net/avMa5/)


var server = app.listen(app.get('port'), function() {..}

(检查通过npm install -g express-generator,然后express myApp


话虽这么说,让我们记住socket.io文档如何要求我们将其触发:


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,我真的不想将我的socket.io函数放在www文件中。


我想这只是基本语法,但我什至无法使用它,甚至不能在www文件上使用module.exports = server或server.exports = servermodule.exports.io = app(io)


因此,问题是:如何使用具有该/ bin / www文件作为我的应用程序起点的socket.io?


临摹微笑
浏览 877回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP