Estoy usando socket.io para crear un juego de mesa similar a las cartas contra la humanidad. Me pregunto cómo puedo mantener el nombre y la puntuación de los jugadores, etc., sin tener que enviar todos los datos a una nueva página cuando comiencen los nuevos juegos. Estaba pensando en simplemente cambiar el cuerpo del html pero permanecer en la misma página para que el javascript no se reinicie y aún pueda acceder a toda la información de los jugadores.
Encontré usando document.write() sin embargo, parece que solo acepta un parámetro de cadena. ¿Hay alguna manera de hacer algo como este document.write(game.html) .
¿Alguna idea sobre cómo hacer esto, tal vez una mejor manera de pasar información entre archivos javascript sin tener que publicar los datos cada vez que se carga una nueva página? He intentado enviar los datos por correo, sin embargo, hace que sea mucho más difícil mantener todo consistente.
PD Esta es la primera vez que hago correctamente algo con node.js, socket.io, javascript, etc. Así que podría estar haciendo una pregunta estúpida.
Una vez que obtenga datos de socket.io de un detector de eventos, puede usar querySelector() o cualquier otro método de manipulación de DOM para mostrar los datos en el DOM. ¿Algo como esto?
HTML
<div id="panel"></div>JS
const socket = io("ws://localhost:3000" ) const panel = document.querySelector("#panel") // receive a message from the server socket.on( "hello", (arg) => { panel.innerText = arg });