関数の 1 つで socket.io リスナーを使用して、「敗者」イベントをリッスンし、他のクライアントが勝ったことをクライアントに伝えています。ただし、これはソケット自体を参照するため、socket.on 関数内で「this」キーワードを使用してクライアントについて話すことはできません。私はこれについて間違った方法で進んでいますか?または、super などの別の方法でクライアント オブジェクトにアクセスできますか?
socket.on('loser', function() {
//Remove all current objects then restart the game.
//THIS PART DOESN'T WORK, SINCE 'THIS' NO LONGER REFERS TO
//THE GAME OBJECT, BUT INSTEAD REFERENCES THE SOCKET LISTENER.
for(var i = 0; i < this.board.objects.length; i++)
{
this.board.remove(this.board.objects[i]);
}
//WORKS AS EXPECTED FROM HERE ON...
Game.setBoard(1, new TitleScreen(gameType,
"Loser!",
"Press Space to Play Again",
playGame));
});