Skip to content

Commit b90238c

Browse files
author
reco_luan
committed
fix: fix a bug about siderbar display
1 parent 27a9b3b commit b90238c

File tree

2 files changed

+24
-48
lines changed

2 files changed

+24
-48
lines changed

packages/vuepress-theme-reco/components/Common.vue

Lines changed: 21 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,19 @@
44
<transition name="fade">
55
<LoadingPage v-show="firstLoad" class="loading-wrapper" />
66
</transition>
7+
78
<transition name="fade">
89
<Password v-show="!isHasKey" class="password-wrapper-out" key="out" />
910
</transition>
11+
1012
<div :class="{ 'hide': firstLoad || !isHasKey }">
11-
<Navbar
12-
v-if="shouldShowNavbar"
13-
@toggle-sidebar="toggleSidebar"/>
14-
15-
<div
16-
class="sidebar-mask"
17-
@click="toggleSidebar(false)"></div>
18-
19-
<Sidebar
20-
:items="sidebarItems"
21-
@toggle-sidebar="toggleSidebar">
22-
<template slot="top">
23-
<PersonalInfo />
24-
</template>
25-
<slot
26-
name="sidebar-bottom"
27-
slot="bottom"/>
13+
<Navbar v-if="shouldShowNavbar" @toggle-sidebar="toggleSidebar" />
14+
15+
<div class="sidebar-mask" @click="toggleSidebar(false)"></div>
16+
17+
<Sidebar :items="sidebarItems" @toggle-sidebar="toggleSidebar">
18+
<PersonalInfo slot="top" />
19+
<slot name="sidebar-bottom" slot="bottom"/>
2820
</Sidebar>
2921

3022
<Password v-show="!isHasPageKey" :isPage="true" class="password-wrapper-in" key="in"></Password>
@@ -38,37 +30,25 @@
3830
<LoadingPage v-if="firstLoad" />
3931
<Password v-else-if="!isHasKey" />
4032
<div v-else>
41-
<Navbar
42-
v-if="shouldShowNavbar"
43-
@toggle-sidebar="toggleSidebar"/>
44-
45-
<div
46-
class="sidebar-mask"
47-
@click="toggleSidebar(false)"></div>
48-
49-
<Sidebar
50-
:items="sidebarItems"
51-
@toggle-sidebar="toggleSidebar">
52-
<template slot="top">
53-
<PersonalInfo />
54-
</template>
55-
<slot
56-
name="sidebar-bottom"
57-
slot="bottom"/>
33+
<Navbar v-if="shouldShowNavbar" @toggle-sidebar="toggleSidebar"/>
34+
35+
<div class="sidebar-mask" @click="toggleSidebar(false)"></div>
36+
37+
<Sidebar :items="sidebarItems" @toggle-sidebar="toggleSidebar">
38+
<PersonalInfo slot="top" />
39+
<slot name="sidebar-bottom" slot="bottom"/>
5840
</Sidebar>
5941

6042
<Password v-if="!isHasPageKey" :isPage="true"></Password>
61-
<div v-else>
62-
<slot></slot>
63-
</div>
43+
<slot v-else></slot>
6444
</div>
6545
</transition>
6646
</div>
6747
</div>
6848
</template>
6949

7050
<script>
71-
import { defineComponent, computed, ref, onMounted, watch, reactive } from '@vue/composition-api'
51+
import { defineComponent, computed, ref, onMounted } from '@vue/composition-api'
7252
import Navbar from '@theme/components/Navbar'
7353
import Sidebar from '@theme/components/Sidebar'
7454
import PersonalInfo from '@theme/components/PersonalInfo'
@@ -133,6 +113,7 @@ export default defineComponent({
133113
...userPageClass
134114
}
135115
})
116+
136117
const hasKey = () => {
137118
const { keyPage } = root.$themeConfig
138119
if (!keyPage || !keyPage.keys || keyPage.keys.length === 0) {
@@ -178,12 +159,7 @@ export default defineComponent({
178159
handleLoading()
179160
})
180161
181-
watch(reactive(root.$frontmatter), (newVal, oldVal) => {
182-
hasKey()
183-
hasPageKey()
184-
})
185-
186-
return { isSidebarOpen, absoluteEncryption, shouldShowNavbar, shouldShowSidebar, pageClasses, isHasKey, hasKey, isHasPageKey, toggleSidebar, firstLoad }
162+
return { isSidebarOpen, absoluteEncryption, shouldShowNavbar, shouldShowSidebar, pageClasses, hasKey, hasPageKey, isHasKey, isHasPageKey, toggleSidebar, firstLoad }
187163
},
188164
189165
watch: {
@@ -225,7 +201,7 @@ export default defineComponent({
225201
overflow hidden
226202
227203
.fade-enter-active, .fade-leave-active {
228-
transition: opacity .5s;
204+
transition: opacity .5s ease-in-out .5s;
229205
}
230206
.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
231207
opacity: 0;

packages/vuepress-theme-reco/components/Page.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
<template>
22
<main class="page" :style="pageStyle">
33
<ModuleTransition>
4-
<div v-show="recoShowModule && $page.title" class="page-title">
4+
<div v-if="recoShowModule && $page.title" class="page-title">
55
<h1 class="title">{{$page.title}}</h1>
66
<PageInfo :pageInfo="$page" :showAccessNumber="showAccessNumber"></PageInfo>
77
</div>
88
</ModuleTransition>
99

1010
<ModuleTransition delay="0.08">
11-
<Content v-show="recoShowModule" class="theme-reco-content" />
11+
<Content v-if="recoShowModule" class="theme-reco-content" />
1212
</ModuleTransition>
1313

1414
<ModuleTransition delay="0.16">
15-
<footer v-show="recoShowModule" class="page-edit">
15+
<footer v-if="recoShowModule" class="page-edit">
1616
<div
1717
class="edit-link"
1818
v-if="editLink"

0 commit comments

Comments
 (0)