Files
pqs-9100_client/frontend/src/App.vue

55 lines
1.4 KiB
Vue
Raw Normal View History

2024-08-07 21:48:24 +08:00
<template>
2024-10-11 08:49:31 +08:00
<!--element-plus语言国际化全局修改为中文-->
<el-config-provider
:locale='locale'
:size='assemblySize'
:button='buttonConfig'
>
2025-01-15 08:42:41 +08:00
<router-view />
2024-10-11 08:49:31 +08:00
</el-config-provider>
2024-08-07 21:48:24 +08:00
</template>
2024-10-11 08:49:31 +08:00
<script lang='ts' setup>
2024-08-07 21:48:24 +08:00
defineOptions({
2024-10-11 08:49:31 +08:00
name: 'App',
})
import { useI18n } from 'vue-i18n'
import { getBrowserLang } from '@/utils'
import { useTheme } from '@/hooks/useTheme'
import { ElConfigProvider } from 'element-plus'
import { LanguageType } from './stores/interface'
import { useGlobalStore } from '@/stores/modules/global'
import en from 'element-plus/es/locale/lang/en'
import zhCn from 'element-plus/es/locale/lang/zh-cn'
const globalStore = useGlobalStore()
2024-08-22 11:27:06 +08:00
// init theme
2024-10-11 08:49:31 +08:00
const { initTheme } = useTheme()
initTheme()
2024-08-22 11:27:06 +08:00
// init language
2024-10-11 08:49:31 +08:00
const i18n = useI18n()
2024-08-22 11:27:06 +08:00
onMounted(() => {
2024-10-11 08:49:31 +08:00
const language = globalStore.language ?? getBrowserLang()
i18n.locale.value = language
globalStore.setGlobalState('language', language as LanguageType)
})
2024-08-22 11:27:06 +08:00
// element language
const locale = computed(() => {
2024-10-11 08:49:31 +08:00
if (globalStore.language == 'zh') return zhCn
if (globalStore.language == 'en') return en
return getBrowserLang() == 'zh' ? zhCn : en
})
2024-08-22 11:27:06 +08:00
// element assemblySize
2024-10-11 08:49:31 +08:00
const assemblySize = computed(() => globalStore.assemblySize)
2024-08-22 11:27:06 +08:00
// element button config
2024-10-11 08:49:31 +08:00
const buttonConfig = reactive({ autoInsertSpace: false })
2024-08-07 21:48:24 +08:00
2024-10-11 08:49:31 +08:00
document.getElementById('loadingPage')?.remove()
2024-08-07 21:48:24 +08:00
</script>
2024-08-27 14:01:26 +08:00
<style scoped></style>