我正在尝试使用express和socket.io创建一个2人游戏。游戏是一个简单的游戏,所需的数据结构是一个矩阵。有没有一种方法可以将此矩阵附加到房间并对其进行更改。还是应该将矩阵连接到两个插槽上,然后以这种方式进行?
最佳答案
没有一种将您自己的数据添加到房间对象的受支持的方法。您当然可以将矩阵放在两个socket.io对象上,这可能是最简单的解决方案。这就产生了一些限制,即套接字永远不会出现在多个游戏中,并且一旦用户断开连接,矩阵就会丢失(也许是可以的限制)。
另一种方法是使用您自己的Map
对象,其中键是房间名称,值是矩阵。因此,每当为新房间创建矩阵时,只需将其放在自己的 map 中即可。
// create matrix map
let matrixMap = new Map();
// set a matrix for a room
matrixMap.set(roomName, newMatrix).
// get a matrix for a room
let matrix = matrixMap.get(roomName);
关于node.js - 我们可以在Socket.IO中将数据添加到房间吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49671854/