Resident.vue 1.7 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'

export default {
    data() {
        return {
            visible: false,
            themeVars: {
                primaryColor: '#54CCBD',
                // 按键
                buttonPrimaryBackground: '#54CCBD',
                buttonPrimaryBorderColor: '#54CCBD',
                buttonDefaultBorderColor: '#BFBFBF',
                buttonNormalFontSize: '.16rem',
                pickerConfirmActionColor: '#54CCBD',
                checkboxCheckedIconColor: '#54CCBD',
                // tab
                tabsBottomBarColor: '#54CCBD',
                // 级联选项
                cascaderActiveColor: '#54CCBD',
                // 表单相关
                cellVerticalPadding: '.15rem',
                cellTextColor: '#262626',
                fieldLabelColor: '#262626',
                cellBorderColor: '#d9d9d9'
            }
        }
    },
    setup() {
        const store = useStore()
        return { store }
    },
    created() {
        this.init()
    },
    methods: {
        async init() {
            console.log(this.visible)
            const res = await getDict()
            this.store.$patch({ dict: res.data || {} })
            this.visible = true
        }
    }
}
</script>

<style lang="less" scoped>

</style>