如何在SAILS.js中为emit创建新频道?
简单
io.sockets.in('ee').emit('messageName', {thisIs: 'theMessage'});
然后在Angular.js
io.socket.on("ee", function(data){
console.log(data);
})
不要工作..
答案 0 :(得分:0)
您可以使用此代码,我认为它可以完成您想要的工作,但不是您提到的方式:
在客户端调用我们在服务器端使用的路由之前添加以下代码:
// Use `io.socket.on()` to listen for the 'hello' event:
io.socket.on('hello', function (data) {
console.log('Socket `' + data.id + '` joined the party!');
});
在您想要的路线控制器中添加以下代码:
// Have the socket which made the request join the "funSockets" room.
sails.sockets.join(req, 'funSockets');
// Broadcast a notification to all the sockets who have joined
// the "funSockets" room, excluding our newly added socket:
sails.sockets.broadcast('funSockets', 'hello', { howdy: 'hi there!'}, req);
注意这个“你好!”刚刚加入的客户端将不会收到该消息。如果要向所有客户端以及新加入的客户端发送消息,只需从广播参数中删除req参数。
有关详细信息,请查看此链接: http://sailsjs.com/documentation/concepts/realtime