我正在尝试从服务器向客户端接收我正在制作的东西的当前抽屉的 ID。这就是我到目前为止所得到的
客户:
socket.emit('returnDrawer');
socket.on('returnDrawer', function(ret)
{
console.log("id:", ret);
})
服务器:
socket.on('returnDrawer', function() {
return users[currentDrawer].ioid;
});
但是我的客户端回调根本没有被当前抽屉 ID 调用,需要一些帮助。
最佳答案
您可以将回调函数作为参数发送给emit()。这是我的一个项目的例子。没有抽屉,但有动画。
客户端
socket.emit('animate', 'text', payload, (response) => {
console.log(response);
});
服务器端
socket.on('animate', (animation, payload, callback) => {
callback = typeof callback == "function" ? callback : () => {};
try {
this.runAnimation(animation, payload);
callback({status:'OK'});
}
catch(error) {
callback({error:error.message});
}
});
关于javascript - 从 socket.io 返回一个值到客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54311170/