Разница в комнатах socket.io от и до - PullRequest
0 голосов
/ 25 апреля 2018

Я пытаюсь познакомиться с socket.io и узлом.https://socket.io/docs/rooms-and-namespaces/

Это моя ссылка.

var socketIO = require('socket.io')(http);
 socketIO.on('connection', function(socket) { 
 socket.join(data.room);})
 socketIO.in(users[key].room).emit('newmsg', data); 
        socketIO.to(users[key].room).emit('newmsg', data); 

Здесь код с socketIO.in выдает выходные данные, тогда как socketIO.to не
Но согласно их документации в и to должен возвращаться тот же o / p.Кто-то, пожалуйста, объясните мне критическую разницу ч / б им.

1 Ответ

0 голосов
/ 25 апреля 2018

Прямо в socket.io doc :

namespace.in(room)

Synonym of namespace.to(room).

Итак, .to() и .in() одинаковы.


И, если вы посмотрите в код , вы увидите это:

Namespace.prototype.to =
Namespace.prototype.in = function(name){
  if (!~this.rooms.indexOf(name)) this.rooms.push(name);
  return this;
};

Итак, .to() и .in() запускают один и тот же код, поэтому любое различие, которое, по вашему мнению, вы видите, не связано с разницей между вызовом .to() или .in(). Это должно быть из-за чего-то еще. Вы должны показать нам воспроизводимый набор кода, который показывает некоторую разницу для нас, чтобы помочь вам отладить это.

...