单击套接字按钮的NodeJS socket.io会话

时间:2018-11-15 10:00:45

标签: node.js socket.io

我正在制作基本的答题器,但遇到了一个我无法确定对手是否单击了按钮的问题。这是我的代码:

这两个用户被重定向到游戏页面,并使用usernameopponent创建会话

app.get('/game', (req, res) => {
    if(req.session.username) {
    var username = req.session.username;
    var opponent = players[1];
    req.session.player = username;
    req.session.opponent = opponent;
    return res.render('game.html', {username, opponent});
    }
    res.redirect('/');
});

然后,如果用户单击该套接字触发的按钮: socket.emit('quad-box-clicked');

然后在服务器端发生这种情况:

socket.on('quad-box-clicked', () => {
    io.emit('get-point', {
        points: points = points + 1
    });
});

它将点设置为单击按钮的用户:

  socket.on('get-point', (data) => {
    document.getElementById("user-points").innerHTML = data.points;
  });

但是问题是,无论哪个玩家点击按钮,都将始终在该位置设置点:

<h1>{{username}}</h1><br>
<h2>Points: <p id="user-points">0</p></h2> <---- RIGHT THERE
<h1>{{opponent}}</h1>
<h2>Points: <p id="opponent-points">0</p></h2>

还如何使该用户可以看到对手的分数?就像我玩游戏一样,我可以看到对手只是点击了按钮。

0 个答案:

没有答案