socket.io中emit和on的用法【轉】

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

相關文章
相關標籤/搜索