fix: Resolver bucle infinito de reconexiones
- Agregar bandera hasReconnected para ejecutar reconexión solo una vez - Evita que el useEffect se ejecute infinitamente - Reduce carga del servidor significativamente
This commit is contained in:
@@ -37,10 +37,11 @@ export default function Home() {
|
||||
|
||||
const [passwordPromptRoomId, setPasswordPromptRoomId] = useState<string | null>(null);
|
||||
const [joinPassword, setJoinPassword] = useState('');
|
||||
const [hasReconnected, setHasReconnected] = useState(false);
|
||||
|
||||
// Restaurar sesión al cargar
|
||||
// Restaurar sesión al cargar - SOLO UNA VEZ
|
||||
useEffect(() => {
|
||||
if (session && isConnected) {
|
||||
if (session && isConnected && !hasReconnected) {
|
||||
setPlayerName(session.playerName);
|
||||
setFullPlayerName(session.fullPlayerName);
|
||||
setView(session.currentView);
|
||||
@@ -51,8 +52,10 @@ export default function Home() {
|
||||
} else if (session.currentView === 'lobby') {
|
||||
actions.refreshRooms();
|
||||
}
|
||||
|
||||
setHasReconnected(true);
|
||||
}
|
||||
}, [session, isConnected]);
|
||||
}, [session, isConnected, hasReconnected]);
|
||||
|
||||
// Efecto para cambiar a vista de juego cuando el servidor nos une
|
||||
useEffect(() => {
|
||||
|
||||
Reference in New Issue
Block a user