From 45564d66430023fbe621a00a3d71871b8e77d5c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=91=E6=96=87=E5=8F=AF?= <1041367524@qq.com> Date: Wed, 16 Mar 2022 14:23:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=A1=86=E6=9E=B6=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components.d.ts | 7 +++++ src/components/XIcon.vue | 10 ++++--- src/layouts/components/breakcrumb.vue | 24 +++++++++++++++ src/layouts/components/footer.vue | 20 +++++++++++++ src/layouts/components/header.vue | 41 ++++++++++++++++++++++++++ src/layouts/components/logo.vue | 2 +- src/layouts/components/main.vue | 21 ++++++------- src/layouts/components/menu-item.vue | 2 +- src/layouts/components/menu.vue | 4 +-- src/layouts/components/operation.vue | 38 ++++++++++++++++++++++++ src/layouts/components/profile.vue | 31 +++++++++++++++++++ src/layouts/components/tabs.vue | 20 +++++++++++++ src/layouts/components/view.vue | 13 ++++++++ src/layouts/default.vue | 10 ++++++- src/styles/base.less | 2 +- src/styles/globalVariables.module.less | 12 ++++++-- src/views/index.vue | 2 +- 17 files changed, 236 insertions(+), 23 deletions(-) create mode 100644 src/layouts/components/breakcrumb.vue create mode 100644 src/layouts/components/footer.vue create mode 100644 src/layouts/components/header.vue create mode 100644 src/layouts/components/operation.vue create mode 100644 src/layouts/components/profile.vue create mode 100644 src/layouts/components/tabs.vue create mode 100644 src/layouts/components/view.vue diff --git a/src/components.d.ts b/src/components.d.ts index 65cf133..7ebcafa 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -4,10 +4,17 @@ declare module 'vue' { export interface GlobalComponents { + ElAvatar: typeof import('element-plus/es')['ElAvatar'] + ElBacktop: typeof import('element-plus/es')['ElBacktop'] + ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb'] + ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem'] ElButton: typeof import('element-plus/es')['ElButton'] ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] ElDivider: typeof import('element-plus/es')['ElDivider'] + ElDropdown: typeof import('element-plus/es')['ElDropdown'] + ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem'] + ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu'] ElIcon: typeof import('element-plus/es')['ElIcon'] ElMenu: typeof import('element-plus/es')['ElMenu'] ElMenuItem: typeof import('element-plus/es')['ElMenuItem'] diff --git a/src/components/XIcon.vue b/src/components/XIcon.vue index f29ca25..1ca7fec 100644 --- a/src/components/XIcon.vue +++ b/src/components/XIcon.vue @@ -1,15 +1,16 @@ + + diff --git a/src/layouts/components/footer.vue b/src/layouts/components/footer.vue new file mode 100644 index 0000000..ccc739e --- /dev/null +++ b/src/layouts/components/footer.vue @@ -0,0 +1,20 @@ + + + + + diff --git a/src/layouts/components/header.vue b/src/layouts/components/header.vue new file mode 100644 index 0000000..53bfd1c --- /dev/null +++ b/src/layouts/components/header.vue @@ -0,0 +1,41 @@ + + + + + diff --git a/src/layouts/components/logo.vue b/src/layouts/components/logo.vue index 749a67c..263452a 100644 --- a/src/layouts/components/logo.vue +++ b/src/layouts/components/logo.vue @@ -12,7 +12,7 @@ diff --git a/src/layouts/components/profile.vue b/src/layouts/components/profile.vue new file mode 100644 index 0000000..1eda464 --- /dev/null +++ b/src/layouts/components/profile.vue @@ -0,0 +1,31 @@ + + + + + diff --git a/src/layouts/components/tabs.vue b/src/layouts/components/tabs.vue new file mode 100644 index 0000000..7118987 --- /dev/null +++ b/src/layouts/components/tabs.vue @@ -0,0 +1,20 @@ + + + + + diff --git a/src/layouts/components/view.vue b/src/layouts/components/view.vue new file mode 100644 index 0000000..7147491 --- /dev/null +++ b/src/layouts/components/view.vue @@ -0,0 +1,13 @@ + + + + + diff --git a/src/layouts/default.vue b/src/layouts/default.vue index 79190a0..7c0ddfe 100644 --- a/src/layouts/default.vue +++ b/src/layouts/default.vue @@ -8,8 +8,10 @@
-
+ + +
@@ -19,12 +21,16 @@ import LayoutLogo from './components/logo.vue'; import LayoutAside from './components/aside.vue'; import LayoutMenu from './components/menu.vue'; + import LayoutHeader from './components/header.vue'; + import LayoutTabs from './components/tabs.vue'; + import LayoutFooter from './components/footer.vue'; diff --git a/src/styles/base.less b/src/styles/base.less index 1193371..a7e7d8e 100644 --- a/src/styles/base.less +++ b/src/styles/base.less @@ -8,6 +8,6 @@ body, *:not([class^='el-']) { margin: 0; padding: 0; - transition: all 0.1s; + transition: all 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); box-sizing: border-box; } diff --git a/src/styles/globalVariables.module.less b/src/styles/globalVariables.module.less index c3f3c5e..d99da99 100644 --- a/src/styles/globalVariables.module.less +++ b/src/styles/globalVariables.module.less @@ -1,6 +1,7 @@ /* color */ @color-black: #282c34; @color-white: #fff; +@color-white-dark: #f6f8f9; @color-primary: #409eff; @color-primary-white: #e8f4ff; @@ -42,9 +43,16 @@ @layout-menu-active-fc: @color-white; @layout-menu-active-bgc: lighten(@color-black, 35%); -@layout-header-height: 68px; +@layout-header-height: 60px; +@layout-header-bgc: @color-white; +@layout-header-fc: @color-black; + +@layout-tabs-height: 50px; + +@layout-footer-bgc: @color-white; +@layout-footer-fc: @color-black; :export { layoutAsideWidth: @layout-aside-width; - layoutLogoSize: calc(@layout-aside-item-size * 0.8); + layoutLogoSize: calc(@layout-header-height * 0.72); } diff --git a/src/views/index.vue b/src/views/index.vue index 576e41e..3f7acda 100644 --- a/src/views/index.vue +++ b/src/views/index.vue @@ -28,6 +28,6 @@