国际化
This commit is contained in:
40
src/lang/index.ts
Normal file
40
src/lang/index.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
import { createI18n } from 'vue-i18n';
|
||||
import {Locale} from 'vant'
|
||||
import zhCN from 'vant/lib/locale/lang/zh-CN'
|
||||
import idId from 'vant/lib/locale/lang/id-ID'
|
||||
import zhLocale from './zh_cn'
|
||||
import idLocale from './id_ID'
|
||||
import type { App } from 'vue';
|
||||
|
||||
|
||||
const messages = {
|
||||
zh: {
|
||||
...zhCN,
|
||||
...zhLocale
|
||||
},
|
||||
id: {
|
||||
...idId,
|
||||
...idLocale
|
||||
}
|
||||
}
|
||||
|
||||
const language = (navigator.language || 'zh').toLocaleLowerCase(); // 这是获取浏览器的语言
|
||||
|
||||
console.log('当前的环境语言是:', language)
|
||||
console.log('当前的后台语言是:', localStorage.getItem('lang'))
|
||||
const i18n = createI18n({
|
||||
allowComposition: true,
|
||||
locale: localStorage.getItem('lang') || language.split('-')[0] || 'zh', // 设置默认语言
|
||||
fallbackLocale: 'zh', // 设置备用语言
|
||||
messages: messages // 设置资源文件对象
|
||||
})
|
||||
|
||||
// 更新vant组件库本身的语言变化,支持国际化
|
||||
export function vantLocales (app: App<Element>) {
|
||||
app.use(i18n)
|
||||
if (language === 'zh') {
|
||||
Locale.use(language, zhCN)
|
||||
} else if (language === 'id') {
|
||||
Locale.use(language, idId)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user