fix: unnecessary refetch of server modules on first mount (#2918)
Signed-off-by: Evan Song <theevansong@gmail.com>
This commit is contained in:
parent
deb16aa7ab
commit
72cbe7f905
@ -271,6 +271,7 @@ const socket = ref<WebSocket | null>(null);
|
|||||||
const isReconnecting = ref(false);
|
const isReconnecting = ref(false);
|
||||||
const isLoading = ref(true);
|
const isLoading = ref(true);
|
||||||
const reconnectInterval = ref<ReturnType<typeof setInterval> | null>(null);
|
const reconnectInterval = ref<ReturnType<typeof setInterval> | null>(null);
|
||||||
|
const isFirstMount = ref(true);
|
||||||
const isMounted = ref(true);
|
const isMounted = ref(true);
|
||||||
|
|
||||||
const route = useNativeRoute();
|
const route = useNativeRoute();
|
||||||
@ -515,9 +516,13 @@ const newMCVersion = ref<string | null>(null);
|
|||||||
const handleInstallationResult = async (data: WSInstallationResultEvent) => {
|
const handleInstallationResult = async (data: WSInstallationResultEvent) => {
|
||||||
switch (data.result) {
|
switch (data.result) {
|
||||||
case "ok":
|
case "ok":
|
||||||
await server.refresh();
|
|
||||||
if (!serverData.value) break;
|
if (!serverData.value) break;
|
||||||
serverData.value.status = "available";
|
serverData.value.status = "available";
|
||||||
|
|
||||||
|
if (!isFirstMount.value) {
|
||||||
|
await server.refresh();
|
||||||
|
}
|
||||||
|
|
||||||
if (server.general) {
|
if (server.general) {
|
||||||
if (newLoader.value) server.general.loader = newLoader.value;
|
if (newLoader.value) server.general.loader = newLoader.value;
|
||||||
if (newLoaderVersion.value) server.general.loader_version = newLoaderVersion.value;
|
if (newLoaderVersion.value) server.general.loader_version = newLoaderVersion.value;
|
||||||
@ -575,7 +580,9 @@ const onReinstall = (potentialArgs: any) => {
|
|||||||
newMCVersion.value = potentialArgs.mVersion;
|
newMCVersion.value = potentialArgs.mVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!isFirstMount.value) {
|
||||||
server.refresh();
|
server.refresh();
|
||||||
|
}
|
||||||
|
|
||||||
error.value = null;
|
error.value = null;
|
||||||
errorTitle.value = "Error";
|
errorTitle.value = "Error";
|
||||||
@ -768,6 +775,11 @@ onUnmounted(() => {
|
|||||||
watch(
|
watch(
|
||||||
() => serverData.value?.status,
|
() => serverData.value?.status,
|
||||||
(newStatus) => {
|
(newStatus) => {
|
||||||
|
if (isFirstMount.value) {
|
||||||
|
isFirstMount.value = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (newStatus === "installing") {
|
if (newStatus === "installing") {
|
||||||
startPolling();
|
startPolling();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user