Javascript Can';t使用Socket.IO向客户端广播

Javascript Can';t使用Socket.IO向客户端广播,javascript,html,node.js,socket.io,Javascript,Html,Node.js,Socket.io,My node.js服务器有一个间隔设置,每60秒调用一个名为“spawnItem”的函数。调用此函数时,它将执行以下代码: io.sockets.emit("spawn item", {x: 10, y: 10}); 每次服务器尝试执行此操作时,它都会立即关闭并显示: TypeError:无法调用未定义的方法“emit” 根据我在网上看到的一切,应该没问题 var util = require("util"),object inspection, etc), io = require("so

My node.js服务器有一个间隔设置,每60秒调用一个名为“spawnItem”的函数。调用此函数时,它将执行以下代码:

io.sockets.emit("spawn item", {x: 10, y: 10});
每次服务器尝试执行此操作时,它都会立即关闭并显示:

TypeError:无法调用未定义的方法“emit”

根据我在网上看到的一切,应该没问题

var util = require("util"),object inspection, etc),
io = require("socket.io"),
Player = require("./Player").Player;
这段代码在页面的顶部,我认为这是所有需要的,还是我错了?我还有
socket=io.listen(4339)
。插座都配置在下面等

我也尝试过这样做:

socket.broadcast.emit("spawn item", bla bla bla);
socket.emit("spawn item", bla bla bla);
我的目标是让服务器告诉客户端每60秒在特定的x,y坐标生成一个项目,但是我无法让服务器发送消息


谢谢

您没有发布太多信息,但我认为您使用了错误的对象:

var io = require('socket.io');
io.sockets.emit(...); // Fails, wrong object.
相反,您需要使用
listen
返回的对象:

var io = require('socket.io').listen(4339);
io.sockets.emit(...); // Correct use.

您没有发布很多信息,但我认为您使用了错误的对象:

var io = require('socket.io');
io.sockets.emit(...); // Fails, wrong object.
相反,您需要使用
listen
返回的对象:

var io = require('socket.io').listen(4339);
io.sockets.emit(...); // Correct use.

你的消息来源是否有不匹配的括号,或者只是你文章中的一个输入错误?是的,这是文章中的一个输入错误。你的消息来源是否有不匹配的括号,或者只是你文章中的一个输入错误?是的,这是文章中的一个输入错误。