You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/** * 功能:对多语言包集中管理,切换语言时,进行本地存储。 * 作者:刘海春 * 时间:2024年10月5日 */ import { ref, computed } from 'vue' import cn from './zhcn' //简体中文包
import en from './en' //英文包
import th from './th' //泰语包
import hk from './zhhk' //中文繁体包
import kr from './kr' //韩语包
// import { LanguagePack } from './type'
export const languagePacks = { cn, hk, en, th, kr } //默认简体中文,用户没有选择过yuyan
const currentLang = ref(localStorage.getItem('userLanguage') || 'cn') export const t = computed(() => languagePacks[currentLang.value] || languagePacks['cn']) // 用户第一次访问网站时,默认设置为 'cn'。
// 用户切换语言时,通过 changeLanguage 函数设置新的值:
export function changeLanguage(lang: string) { if (languagePacks[lang]) { currentLang.value = lang localStorage.setItem('userLanguage', lang) // 这里设置新的 userLanguage
} else { console.error(`Language pack not found: ${lang}`) } } export const availableLanguages = Object.keys(languagePacks) //导出是何种语言['简体中文','英文','繁体中文','泰语']
|