|
@@ -12,29 +12,28 @@ const messages = {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const getCurrentLanguage = () => {
|
|
const getCurrentLanguage = () => {
|
|
|
- //设置
|
|
|
|
|
- let langCode = 'en'
|
|
|
|
|
- const language = localStorage.getItem('lang')
|
|
|
|
|
- switch (language) {
|
|
|
|
|
- case 'en':
|
|
|
|
|
- langCode = 'en'
|
|
|
|
|
- break
|
|
|
|
|
- case 'cn':
|
|
|
|
|
- langCode = 'zh-cn'
|
|
|
|
|
- break
|
|
|
|
|
- default:
|
|
|
|
|
- langCode = 'en'
|
|
|
|
|
|
|
+ // 从 localStorage 读取语言设置,与 app store 保持一致
|
|
|
|
|
+ // useStorage 使用 JSON 序列化,所以需要 parse
|
|
|
|
|
+ try {
|
|
|
|
|
+ const stored = localStorage.getItem('language')
|
|
|
|
|
+ if (stored) {
|
|
|
|
|
+ const language = JSON.parse(stored)
|
|
|
|
|
+ if (language === 'zh-cn' || language === 'en') {
|
|
|
|
|
+ return language
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch {
|
|
|
|
|
+ // ignore parse error
|
|
|
}
|
|
}
|
|
|
- return langCode
|
|
|
|
|
|
|
+ return 'zh-cn' // 默认中文
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const i18n = createI18n({
|
|
const i18n = createI18n({
|
|
|
legacy: false,
|
|
legacy: false,
|
|
|
globalInjection: true,
|
|
globalInjection: true,
|
|
|
- locale: getCurrentLanguage(), //去getCurrentLanguage函数找有没有设置的语言,默认选择zh
|
|
|
|
|
|
|
+ locale: getCurrentLanguage(),
|
|
|
messages,
|
|
messages,
|
|
|
- fallbackLocale: 'en-US',
|
|
|
|
|
- defaultLocale: 'en-US'
|
|
|
|
|
|
|
+ fallbackLocale: 'zh-cn'
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
export default i18n
|
|
export default i18n
|