【发布时间】:2022-01-02 06:08:16
【问题描述】:
我正在创建一个国际象棋游戏网站。当用户点击在线播放时,我需要显示可用的在线播放器。从在线播放器列表中,用户可以单击并向他们发送请求以进行播放。现在我的主要问题是我是 socket.io 的新手,并没有在网上找到任何关于此的资源。我并不是要显示单个房间中可用的用户,而是显示整个套接字服务器可用的播放器。 Here Online Players will be shown in a list
function sendName(name) {
var isNameValid = true;
for (var i = 0; i < users.length; i++) {
if (users[i].name === name) {
isNameValid = false;
console.log(name + " is already taken");
console.log(users);
socket.emit("nameError", "Name already exists, Try again");
return;
}
}
if (isNameValid) {
var room = generateRoomId();
users.push({ id: socket.id, name: name, room: room });
socket.join(room);
socket.emit("roomId", room);
}
}
所有用户都被推送到服务器端的用户数组中。但我不知道如何在客户端获取他们的姓名和房间信息,然后在前端显示。
<div>
<h3 style="color:white;">Online Players</h3>
<ul id="users">
</ul>
</div>
在线玩家将在此处显示。 此外,当一个用户断开在线玩家列表时,我认为套接字可以刷新。我正在做一个项目,任何帮助都将不胜感激,我也会从中学习。
【问题讨论】:
标签: javascript html jquery node.js socket.io