Socket.io 的 emit

只發送事件

socket.emit('action');

表示發送了一個action命令,命令是字符串的,在另外一端接收時,能夠這麼寫:socket

socket.on('action',function(){...});

發送事件和數據

socket.emit('action',data);

表示發送了一個action命令,還有data數據,在另外一端接收時,能夠這麼寫:函數

socket.on('action',function(data){...});

發送事件和兩個數據

socket.emit(action,arg1,arg2);

表示發送了一個action命令,還有兩個數據,在另外一端接收時,能夠這麼寫:code

socket.on('action',function(arg1,arg2){...});

發送事件和多個數據

socket.emit(action,arg1,arg2,arg3,arg4);

若是是多個參數,就也應該知道什麼意思了,同上事件

發送事件和數據及回調函數

在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') ;會回調函數執行。一次發送不該該寫多個回調,不然只有最後一個起效,回調應做爲最後一個參數。it

相關文章
相關標籤/搜索