【问题标题】:Socket.io MVC node.js emit to roomSocket.io MVC node.js 发射到房间
【发布时间】:2017-09-27 17:15:22
【问题描述】:

我一直在研究这个Socket.io MVC node.js,但我目前正在苦苦挣扎。

它在文档中说:

Socket.io API 的

由于 Socket.MVC 只是 Socket.io 的一种包装机制,所有的 可以使用 Socket.MVC 模块使用相同的 API。请看一个 通过访问 Socket.io Github 列出所有可用的 API 页面,或http://socket.io(取决于您的版本)

我的问题是我找不到将套接字 MVC 发送到房间的方法。

socketMVC.to(userid).emit('message', {message:2});

应该有效,但无效。知道我该怎么做吗?

编辑: userid 与此处分配的相同: 从 'socket.io-client' 导入 * 作为 io;

下载

oninit:
      this.socket = io(this.socketurl);


      var privateRoom = socket.request.session.passport.user;

        socket.join(privateRoom);


      this.socket.on('message', (data) => {
            //  this.messagesCounter = this.messagesCounter + 1;
              alert("OMG?");
          });

编辑,在 server.js 中

io.on('connection',function(socket) {
    console.log('user connected');
    OnlineUsers.push(socket);
  //  socket.join('');
    console.log(socket.request.session.passport);
    console.log("user is connceted");




    socketMVC.init(io, socket, {
        debug: true,
        filePath: ['./src/routes/sockets.js']
    });



socket.on('disconnect', function(){
    console.log('user disconnected');
});

socket.on('add-message',function (message) {
    io.emit('message', {type:'new-message', text: message});
});

    socket.on('myevent', function(someData) {
        console.log("MYEVENT WORKS???????");
    });

});

sockets.js

var path = require('path');


module.exports = function (socket) {
   var privateRoom = socket.request.session.passport.user;

    socket.join(privateRoom);


    socket.on('testing', function() {
        console.log('GOT SOME SORT OF RESPONSE!!!');
    });
};

【问题讨论】:

  • 你确定userid 是正确的吗?
  • userid @Phix,与我分配的相同。所以是的
  • 你能添加完整的代码吗?
  • 基本上就是完整的代码@Arkerone
  • 你在哪里得到套接字? socketMVC.on('connection')?

标签: javascript node.js socket.io


【解决方案1】:

socketMVC.to 替换为socketMVC.io.to

【讨论】:

  • 将在 12 小时内登记入住。理论上能解决吗?
  • @reviewers 在建议删除/删除之前,请确保您确实知道您在说什么。对于所有非领域专家都知道,这很可能是解决方案,尽管很短。跳过始终是一种选择。
猜你喜欢
  • 1970-01-01
  • 2018-05-07
  • 2013-08-01
  • 2023-03-27
  • 2013-07-12
  • 2016-12-21
  • 2012-12-08
  • 2013-10-10
  • 2016-09-04
相关资源
最近更新 更多