2

安装了 Node.js 和 socketio io(使用 npm)。节点Hello World工作。

使用以下行创建了 app.js:

var io = require('socket.io')();

节点node app.js抛出异常:

io_test.js:1
ts, require, module, __filename, __dirname) { var io = require('socket.io')();
                                                                       ^
TypeError: object is not a function

怎么修?

OSX 10.7.5。Node.js 0.8.18。

4

1 回答 1

7

将该行替换为

var io = require('socket.io').listen(8080);

基本上,如果您阅读错误描述,则 require('socket.io') 将返回一个对象,而不是您可以调用的函数。如果您查看 socket.io 网站上的示例代码,您可以看到您可以在返回的对象上调用 listen()。所以,你也可以这样写:

var sockio = require('socket.io')
var io = sockio.listen(8080)
于 2013-02-03T16:36:16.647 回答