socket.io中emit和on的用法

1、搭一个server服务器

var server = require('http').createServer((req, res) => {
res.end("111")
});
var io = require('socket.io')(server);
server.listen(9002);
 
2、在发生特定情况时发送一个action命令
  a)命令可以只有一个名字
    io.emit('自命名')
  
  b)命令可以除了名字还有数据
    io.emit('自命名',a)
 
  c)命令可以除了名字还有多个数据
    io.emit('自命名',a,b,c,...,d)
 
  d)命令可以除了名字还有回调函数
    io.emit('自命名',data,function(a,b){ } )
 
3、此时对应接收数据的地方应该建议与socket的链接
var socket = io('http://localhost:9002');
 
socket.on('msg', function (msg) {
  location.reload();
});

4、此时的socket.on与上述2一一对应

  a)命令可以只有一个名字
    socket.on('自命名',function(){ } )
  
  b)命令可以除了名字还有数据
    socket.on('自命名',  function(data){  } )
 
  c)命令可以除了名字还有多个数据
    socket.on('自命名',  function(a,b,c,...,d){  } )
 
  d)命令可以除了名字数据还有回调函数
    socket.on('自命名',  function(data,fn){  fn(a,b);  })

关于如何把Node.js管理系统与M站通过socket.io联系起来可以看https://www.cnblogs.com/yangyangxxb/p/9892639.html

原文地址:https://www.cnblogs.com/yangyangxxb/p/9892755.html