Doctor.vue 1.71 KB
<template>
    <van-config-provider :theme-vars='themeVars'>
        <div class='h-full resident-home'>
            <router-view v-slot='{ Component }'>
                <Transition name='route' mode='out-in'>
                    <component :is='Component' v-if='visible' />
                </Transition>
            </router-view>
        </div>
    </van-config-provider>
</template>

<script>
import { getDict } from '@/api/base.js'
import { useStore } from './store/index.js'
import { callMobile, getQueryVariable } from '@/utils/common'

export default {
    data() {
        return {
            visible: false,
            themeVars: {
                primaryColor: '#607FF0',
                buttonPrimaryBackground: '#607FF0',
                buttonPrimaryBorderColor: '#607FF0',
                buttonDefaultBorderColor: '#BFBFBF',
                buttonNormalFontSize: '16px',
                // 表单相关
                cellVerticalPadding: '15px',
                cellTextColor: '#262626',
                cellBorderColor: '#d9d9d9'
            }
        }
    },
    setup() {
        const store = useStore()
        return { store }
    },
    created() {
        this.init()
    },
    methods: {
        async init() {
            let token = getQueryVariable('token')
            if (!token) {
                token = sessionStorage.getItem('token')
            }
            if (token) {
             sessionStorage.setItem('token', token)
                const res = await getDict()
                this.store.$patch({ dict: res.data || {} })
                this.visible = true
            } else {
                callMobile("goIndex", {})
            }

        }
    }
}
</script>

<style lang='less' scoped>

</style>