lolosia-web/src/App.vue
2024-12-12 14:36:22 +08:00

43 lines
1.3 KiB
Vue

<template>
<el-config-provider :locale="lang[language]" namespace="el" :size="size">
<router-view />
</el-config-provider>
</template>
<script setup lang="ts">
import { onBeforeMount, onMounted } from 'vue'
//element-plus lang
import zh from 'element-plus/es/locale/lang/zh-cn'
import en from 'element-plus/es/locale/lang/en'
import { storeToRefs } from 'pinia/dist/pinia'
import { useRoute } from 'vue-router'
import { useBasicStore } from '@/store/basic'
import { useConfigStore } from '@/store/config'
//reshow default setting
import { toggleHtmlClass } from '@/theme/utils'
const lang = { zh, en }
const { settings } = storeToRefs(useBasicStore())
const { size, language } = storeToRefs(useConfigStore())
onBeforeMount(() => {
//set tmp token when setting isNeedLogin false
if (!settings.value.isNeedLogin) useBasicStore().setToken(settings.value.tmpToken)
})
const route = useRoute()
onMounted(() => {
const { setTheme, theme, setSize, size, setLanguage, language } = useConfigStore()
setTheme(theme)
setLanguage(language, route.meta?.title)
setSize(size)
toggleHtmlClass(theme)
// TODO Enable sse connect.
// initSSEConnect()
})
</script>
<style lang="scss">
//修改进度条样式
#nprogress .bar {
background: var(--pregress-bar-color) !important;
}
</style>