123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <template>
- <section class="app-main">
- <router-view v-slot="{ Component, route }">
- <transition name="fade-transform" mode="out-in">
- <keep-alive :include="cachedViews">
- <component :is="Component" :key="route.path"/>
- </keep-alive>
- </transition>
- </router-view>
- </section>
- </template>
- <script setup>
- let store = useStore()
- const route = useRoute()
- store.dispatch('tagsView/addCachedView', route)
- const cachedViews = computed(() => {
- return store.state.tagsView.cachedViews
- })
- </script>
- <style lang="scss" scoped>
- .app-main {
- /* 50= navbar 50 */
- min-height: calc(100vh - 50px);
- width: 100%;
- position: relative;
- overflow: hidden;
- }
- .fixed-header + .app-main {
- padding-top: 50px;
- }
- .hasTagsView {
- .app-main {
- /* 84 = navbar + tags-view = 50 + 34 */
- min-height: calc(100vh - 84px);
- }
- .fixed-header + .app-main {
- padding-top: 84px;
- }
- }
- </style>
- <style lang="scss">
- // fix css style bug in open el-dialog
- .el-popup-parent--hidden {
- .fixed-header {
- padding-right: 17px;
- }
- }
- </style>
|