socket.emit('action');表示发送了一个action命令,命令是字符串的,在另一端接收时,可以这么写: socket.on('action',function(){...});
socket.emit('action',data);表示发送了一个action命令,还有data数据,在另一端接收时,可以这么写: socket.on('action',function(data){...});
socket.emit(action,arg1,arg2); 表示发送了一个action命令,还有两个数据,在另一端接收时,可以这么写: socket.on('action',function(arg1,arg2){...});
在emit方法中包含回调函数,例如:
socket.emit('action',data,
function(arg1,arg2){...}
);那么这里面有一个回调函数可以在另一端调用,另一端可以这么写:socket.on('action',function(data,fn){
fn('a','b') ; });
上面的data数据可以有0个或者多个,相应的在另一端改变function中参数的个数即可,function中的参数个数和顺序应该和发送时一致
上面的fn表示另一个端传递过来的参数,是个函数,写fn('a','b') ;会回调函数执行。一次发送不应该写多个回调,否则只有最后一个起效,回调应作为最后一个参数。
相关文章
- 如何理解andriod中的View和framelayout两个概念
- 【Android】开发中个人遇到和使用过的值得分享的资源合集
- linux 中更改用户权限和用户组的命令chmod,chgrp实例
- vue 中router.go;router.push和router.replace的区别
- Vue中mixin的用法
- Java中try,catch,finally的用法
- 使用 JavaScript 中的变量、数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算符的不同位置得到不同的结果
- redis中setbit的用法
- js中return false; jquery中需要这样写:return false(); Jquery 中循环 each的用法 for循环
- SQL中ON和WHERE的区别