Bläddra i källkod

fix(web): setInterval outside onMount (#1883)

Michel Heusschen 2 år sedan
förälder
incheckning
2efa8b6960
1 ändrade filer med 14 tillägg och 13 borttagningar
  1. 14 13
      web/src/lib/components/shared-components/status-box.svelte

+ 14 - 13
web/src/lib/components/shared-components/status-box.svelte

@@ -10,6 +10,7 @@
 	let isServerOk = true;
 	let serverVersion = '';
 	let serverInfo: ServerInfoResponseDto;
+	let pingServerInterval: NodeJS.Timer;
 
 	onMount(async () => {
 		try {
@@ -24,22 +25,22 @@
 			console.log('Error [StatusBox] [onMount]');
 			isServerOk = false;
 		}
-	});
 
-	const pingServerInterval = setInterval(async () => {
-		try {
-			const { data: pingReponse } = await api.serverInfoApi.pingServer();
+		pingServerInterval = setInterval(async () => {
+			try {
+				const { data: pingReponse } = await api.serverInfoApi.pingServer();
 
-			if (pingReponse.res === 'pong') isServerOk = true;
-			else isServerOk = false;
+				if (pingReponse.res === 'pong') isServerOk = true;
+				else isServerOk = false;
 
-			const { data: serverInfoRes } = await api.serverInfoApi.getServerInfo();
-			serverInfo = serverInfoRes;
-		} catch (e) {
-			console.log('Error [StatusBox] [pingServerInterval]', e);
-			isServerOk = false;
-		}
-	}, 10000);
+				const { data: serverInfoRes } = await api.serverInfoApi.getServerInfo();
+				serverInfo = serverInfoRes;
+			} catch (e) {
+				console.log('Error [StatusBox] [pingServerInterval]', e);
+				isServerOk = false;
+			}
+		}, 10000);
+	});
 
 	onDestroy(() => clearInterval(pingServerInterval));