11<script setup lang="ts">
2- import zh_CN from ' ant-design-vue/es/locale/zh_CN'
3- import zh_TW from ' ant-design-vue/es/locale/zh_TW'
4- import en_US from ' ant-design-vue/es/locale/en_US'
5- import { computed , ref } from ' vue'
6- import { theme } from ' ant-design-vue'
72import _ from ' lodash'
83import FooterLayout from ' ./FooterLayout.vue'
94import SideBar from ' ./SideBar.vue'
105import HeaderLayout from ' ./HeaderLayout.vue'
116import PageHeader from ' @/components/PageHeader/PageHeader.vue'
127
13- import gettext from ' @/gettext'
14- import { useSettingsStore } from ' @/pinia'
15-
168const drawer_visible = ref (false )
179const collapsed = ref (collapse ())
1810
@@ -27,78 +19,56 @@ function getClientWidth() {
2719function collapse() {
2820 return getClientWidth () < 1280
2921}
30-
31- const lang = computed (() => {
32- switch (gettext .current ) {
33- case ' zh_CN' :
34- return zh_CN
35- case ' zh_TW' :
36- return zh_TW
37- default :
38- return en_US
39- }
40- })
41-
42- const settings = useSettingsStore ()
43- const is_theme_dark = computed (() => settings .theme === ' dark' )
4422 </script >
4523
4624<template >
47- <AConfigProvider
48- :theme =" {
49- algorithm: is_theme_dark ? theme.darkAlgorithm : theme.defaultAlgorithm,
50- }"
51- :locale =" lang"
52- :auto-insert-space-in-button =" false"
53- >
54- <ALayout style =" min-height : 100vh " >
55- <div class =" drawer-sidebar" >
56- <ADrawer
57- v-model:open =" drawer_visible"
58- :closable =" false"
59- placement =" left"
60- width =" 256"
61- @close =" drawer_visible = false"
62- >
63- <SideBar />
64- </ADrawer >
65- </div >
66-
67- <ALayoutSider
68- v-model:collapsed =" collapsed"
69- collapsible
70- :style =" { zIndex: 11 }"
71- theme =" light"
72- class =" layout-sider"
25+ <ALayout class =" min-h-screen" >
26+ <div class =" drawer-sidebar" >
27+ <ADrawer
28+ v-model:open =" drawer_visible"
29+ :closable =" false"
30+ placement =" left"
31+ width =" 256"
32+ @close =" drawer_visible = false"
7333 >
7434 <SideBar />
75- </ALayoutSider >
76-
77- <ALayout >
78- <ALayoutHeader :style =" { position: 'sticky', top: '0', zIndex: 10, width: '100%' }" >
79- <HeaderLayout @click-un-fold =" drawer_visible = true" />
80- </ALayoutHeader >
81-
82- <ALayoutContent >
83- <PageHeader />
84- <div class =" router-view" >
85- <RouterView v-slot =" { Component, route }" >
86- <Transition name =" slide-fade" >
87- <component
88- :is =" Component"
89- :key =" route.path"
90- />
91- </Transition >
92- </RouterView >
93- </div >
94- </ALayoutContent >
95-
96- <ALayoutFooter >
97- <FooterLayout />
98- </ALayoutFooter >
99- </ALayout >
35+ </ADrawer >
36+ </div >
37+
38+ <ALayoutSider
39+ v-model:collapsed =" collapsed"
40+ collapsible
41+ :style =" { zIndex: 11 }"
42+ theme =" light"
43+ class =" layout-sider"
44+ >
45+ <SideBar />
46+ </ALayoutSider >
47+
48+ <ALayout >
49+ <ALayoutHeader :style =" { position: 'sticky', top: '0', zIndex: 10, width: '100%' }" >
50+ <HeaderLayout @click-un-fold =" drawer_visible = true" />
51+ </ALayoutHeader >
52+
53+ <ALayoutContent >
54+ <PageHeader />
55+ <div class =" router-view" >
56+ <RouterView v-slot =" { Component, route }" >
57+ <Transition name =" slide-fade" >
58+ <component
59+ :is =" Component"
60+ :key =" route.path"
61+ />
62+ </Transition >
63+ </RouterView >
64+ </div >
65+ </ALayoutContent >
66+
67+ <ALayoutFooter >
68+ <FooterLayout />
69+ </ALayoutFooter >
10070 </ALayout >
101- </AConfigProvider >
71+ </ALayout >
10272</template >
10373
10474<style lang="less" scoped>
@@ -154,57 +124,11 @@ body {
154124 overflow : unset !important ;
155125}
156126
157- .dark {
158- h1 , h2 , h3 , h4 , h5 , h6 , p {
159- color : #fafafa !important ;
160- }
161-
162- .ant-checkbox-indeterminate {
163- .ant-checkbox-inner {
164- background-color : transparent !important ;
165- }
166- }
167-
168- .ant-menu {
169- background : unset !important ;
170- }
171-
172- .ant-layout-header {
173- background-color : #1f1f1f !important ;
174- }
175-
176- .ant-card {
177- background-color : #1f1f1f !important ;
178- }
179-
180- .ant-layout-sider {
181- background-color : rgb (20 , 20 , 20 ) !important ;
182-
183- .ant-layout-sider-trigger {
184- background-color : rgb (20 , 20 , 20 ) !important ;
185- }
186-
187- .ant-menu {
188- border-right : 0 !important ;
189- }
190-
191- & .ant-layout-sider-has-trigger {
192- padding-bottom : 0 ;
193- }
194-
195- box-shadow : 2px 0 8px rgba (29 , 35 , 41 , 0.05 );
196- }
197-
198- }
199-
200127.ant-layout-header {
201128 padding : 0 !important ;
202- background-color : #fff !important ;
203129}
204130
205131.ant-layout-sider {
206- background-color : #ffffff ;
207-
208132 & .ant-layout-sider-has-trigger {
209133 padding-bottom : 0 ;
210134 }
0 commit comments