Forráskód Böngészése

Merge pull request #2236 from akx/error-page-fix

fix: load i18n before showing error page
Timothy Jaeryang Baek 11 hónapja
szülő
commit
4f87512bbc
2 módosított fájl, 11 hozzáadás és 9 törlés
  1. 1 1
      src/lib/i18n/index.ts
  2. 10 8
      src/routes/+layout.svelte

+ 1 - 1
src/lib/i18n/index.ts

@@ -37,7 +37,7 @@ const createIsLoadingStore = (i18n: i18nType) => {
 	return isLoading;
 };
 
-export const initI18n = (defaultLocale: string) => {
+export const initI18n = (defaultLocale: string | undefined) => {
 	let detectionOrder = defaultLocale
 		? ['querystring', 'localStorage']
 		: ['querystring', 'localStorage', 'navigator'];

+ 10 - 8
src/routes/+layout.svelte

@@ -21,20 +21,22 @@
 
 	onMount(async () => {
 		theme.set(localStorage.theme);
-		// Check Backend Status
-		const backendConfig = await getBackendConfig();
+		let backendConfig = null;
+		try {
+			backendConfig = await getBackendConfig();
+			console.log("Backend config:", backendConfig);
+		} catch (error) {
+			console.error("Error loading backend config:", error);
+		}
+		// Initialize i18n even if we didn't get a backend config,
+		// so `/error` can show something that's not `undefined`.
+		initI18n(backendConfig?.default_locale);
 
 		if (backendConfig) {
 			// Save Backend Status to Store
 			await config.set(backendConfig);
-			if ($config.default_locale) {
-				initI18n($config.default_locale);
-			} else {
-				initI18n();
-			}
 
 			await WEBUI_NAME.set(backendConfig.name);
-			console.log(backendConfig);
 
 			if ($config) {
 				if (localStorage.token) {