从文档中,如果发出事件并传递函数,则应看到回调运行。当我调试时,此匿名函数永远不会运行。
socket.emit('ferret', 'tobi', function (data) {
console.log(data); // never called
});
Run Code Online (Sandbox Code Playgroud)
然而
socket.on('ferret', function(data){
console.log(data); // data
})
socket.emit('ferret');
Run Code Online (Sandbox Code Playgroud)
因此,事件侦听器可以正常工作,但是发射回调不可以。
发出消息时,回调不会自动被调用,它必须由服务器调用,因此在服务端,您需要执行以下操作:
socket.on('ferret', function(data, callback) {
//Process data
callback(newData)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
566 次 |
| 最近记录: |