From 00895f4da2b9fd7e0e66096815085528baa6299e Mon Sep 17 00:00:00 2001
From: admin <344137771@qq.com>
Date: Sun, 01 Feb 2026 14:49:18 +0800
Subject: [PATCH] 1
---
src/store/language.store.js | 21 +++++++++++++++------
1 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/src/store/language.store.js b/src/store/language.store.js
index 46c4052..83dd69d 100644
--- a/src/store/language.store.js
+++ b/src/store/language.store.js
@@ -2,17 +2,26 @@
import { SET_LANGUAGE } from '@/store/types.store'
import { getStorage, setStorage, getBrowserLang } from '@/utils/index'
+const SUPPORTED_LOCALES = ['en', 'CN', 'zh-CN', 'Korean', 'Japanese', 'de', 'fr', 'vi', 'th', 'Italy', 'es', 'pt', 'gr']
+
+function getInitialLang() {
+ const cached = getStorage('lang')
+ if (cached && SUPPORTED_LOCALES.includes(cached)) return cached
+ const browserLang = getBrowserLang()
+ return SUPPORTED_LOCALES.includes(browserLang) ? browserLang : 'en'
+}
+
export const useLanguageStore = defineStore('language', {
- // state 持久化
persist: true,
- state: () => ('language', {
- language: getStorage('lang') || getBrowserLang() // 项目初始化时,默认为浏览器的语言,
+ state: () => ({
+ language: getInitialLang()
}),
actions: {
[SET_LANGUAGE](locale) {
- this.language = locale
- setStorage('lang', locale)
+ if (SUPPORTED_LOCALES.includes(locale)) {
+ this.language = locale
+ setStorage('lang', locale)
+ }
}
-
},
})
--
Gitblit v1.9.3