|
@@ -1,93 +1,116 @@
|
|
|
<template>
|
|
|
- <div class="navbar">
|
|
|
- <hamburger :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
|
|
|
-
|
|
|
- <breadcrumb class="breadcrumb-container" />
|
|
|
-
|
|
|
- <div class="right-menu">
|
|
|
- <el-dropdown class="avatar-container" trigger="click">
|
|
|
- <div class="avatar-wrapper">
|
|
|
- <img :src="avatar+'?imageView2/1/w/80/h/80'" class="user-avatar">
|
|
|
- <i class="el-icon-caret-bottom" />
|
|
|
- </div>
|
|
|
- <el-dropdown-menu slot="dropdown" class="user-dropdown">
|
|
|
- <router-link to="/">
|
|
|
- <el-dropdown-item>
|
|
|
- Home
|
|
|
+ <div style="position:relative">
|
|
|
+ <div class="navbar">
|
|
|
+ <hamburger
|
|
|
+ :is-active="sidebar.opened"
|
|
|
+ class="hamburger-container"
|
|
|
+ @toggleClick="toggleSideBar"
|
|
|
+ />
|
|
|
+ <div class="right-menu">
|
|
|
+ <time-area class="timeArea"></time-area>
|
|
|
+ <!-- <div class="timeArea">2021年08月09日18:04:17</div> -->
|
|
|
+ <el-dropdown class="avatar-container" trigger="click">
|
|
|
+ <div class="avatar-wrapper">
|
|
|
+ <div>admin</div>
|
|
|
+ <!-- <img :src="avatar+'?imageView2/1/w/80/h/80'" class="user-avatar"> -->
|
|
|
+ <i class="el-icon-caret-bottom" />
|
|
|
+ </div>
|
|
|
+ <el-dropdown-menu slot="dropdown" class="user-dropdown">
|
|
|
+ <router-link to="/">
|
|
|
+ <el-dropdown-item> Home </el-dropdown-item>
|
|
|
+ </router-link>
|
|
|
+ <a
|
|
|
+ target="_blank"
|
|
|
+ href="https://github.com/PanJiaChen/vue-admin-template/"
|
|
|
+ >
|
|
|
+ <el-dropdown-item>Github</el-dropdown-item>
|
|
|
+ </a>
|
|
|
+ <a
|
|
|
+ target="_blank"
|
|
|
+ href="https://panjiachen.github.io/vue-element-admin-site/#/"
|
|
|
+ >
|
|
|
+ <el-dropdown-item>Docs</el-dropdown-item>
|
|
|
+ </a>
|
|
|
+ <el-dropdown-item divided @click.native="logout">
|
|
|
+ <span style="display: block">Log Out</span>
|
|
|
</el-dropdown-item>
|
|
|
- </router-link>
|
|
|
- <a target="_blank" href="https://github.com/PanJiaChen/vue-admin-template/">
|
|
|
- <el-dropdown-item>Github</el-dropdown-item>
|
|
|
- </a>
|
|
|
- <a target="_blank" href="https://panjiachen.github.io/vue-element-admin-site/#/">
|
|
|
- <el-dropdown-item>Docs</el-dropdown-item>
|
|
|
- </a>
|
|
|
- <el-dropdown-item divided @click.native="logout">
|
|
|
- <span style="display:block;">Log Out</span>
|
|
|
- </el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </el-dropdown>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </el-dropdown>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
+
|
|
|
+ <breadcrumb class="breadcrumb-container" />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { mapGetters } from 'vuex'
|
|
|
-import Breadcrumb from '@/components/Breadcrumb'
|
|
|
-import Hamburger from '@/components/Hamburger'
|
|
|
+import { mapGetters } from "vuex";
|
|
|
+import Breadcrumb from "@/components/Breadcrumb";
|
|
|
+import Hamburger from "@/components/Hamburger";
|
|
|
+import TimeArea from "@/components/TimeArea";
|
|
|
|
|
|
export default {
|
|
|
components: {
|
|
|
Breadcrumb,
|
|
|
- Hamburger
|
|
|
+ Hamburger,
|
|
|
+ TimeArea
|
|
|
},
|
|
|
computed: {
|
|
|
- ...mapGetters([
|
|
|
- 'sidebar',
|
|
|
- 'avatar'
|
|
|
- ])
|
|
|
+ ...mapGetters(["sidebar", "avatar"]),
|
|
|
},
|
|
|
methods: {
|
|
|
toggleSideBar() {
|
|
|
- this.$store.dispatch('app/toggleSideBar')
|
|
|
+ this.$store.dispatch("app/toggleSideBar");
|
|
|
},
|
|
|
async logout() {
|
|
|
- await this.$store.dispatch('user/logout')
|
|
|
- this.$router.push(`/login?redirect=${this.$route.fullPath}`)
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+ await this.$store.dispatch("user/logout");
|
|
|
+ this.$router.push(`/login?redirect=${this.$route.fullPath}`);
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
+
|
|
|
+.breadcrumb-container {
|
|
|
+ float: left;
|
|
|
+ position:absolute;
|
|
|
+ bottom:0;
|
|
|
+ width:100%;
|
|
|
+ border-top:1px solid rgb(250, 246, 246)
|
|
|
+
|
|
|
+ // margin-top: 50px;
|
|
|
+ }
|
|
|
.navbar {
|
|
|
- height: 50px;
|
|
|
+ height: 100px;
|
|
|
overflow: hidden;
|
|
|
position: relative;
|
|
|
background: #fff;
|
|
|
- box-shadow: 0 1px 4px rgba(0,21,41,.08);
|
|
|
+ box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
|
|
|
|
|
|
.hamburger-container {
|
|
|
line-height: 46px;
|
|
|
height: 100%;
|
|
|
float: left;
|
|
|
cursor: pointer;
|
|
|
- transition: background .3s;
|
|
|
- -webkit-tap-highlight-color:transparent;
|
|
|
+ transition: background 0.3s;
|
|
|
+ -webkit-tap-highlight-color: transparent;
|
|
|
|
|
|
&:hover {
|
|
|
- background: rgba(0, 0, 0, .025)
|
|
|
+ background: rgba(0, 0, 0, 0.025);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .breadcrumb-container {
|
|
|
- float: left;
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
.right-menu {
|
|
|
float: right;
|
|
|
height: 100%;
|
|
|
line-height: 50px;
|
|
|
+ .timeArea {
|
|
|
+ display: inline-block;
|
|
|
+ margin-right: 30px;
|
|
|
+ }
|
|
|
|
|
|
&:focus {
|
|
|
outline: none;
|
|
@@ -103,10 +126,10 @@ export default {
|
|
|
|
|
|
&.hover-effect {
|
|
|
cursor: pointer;
|
|
|
- transition: background .3s;
|
|
|
+ transition: background 0.3s;
|
|
|
|
|
|
&:hover {
|
|
|
- background: rgba(0, 0, 0, .025)
|
|
|
+ background: rgba(0, 0, 0, 0.025);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -129,7 +152,7 @@ export default {
|
|
|
cursor: pointer;
|
|
|
position: absolute;
|
|
|
right: -20px;
|
|
|
- top: 25px;
|
|
|
+ top: 19px;
|
|
|
font-size: 12px;
|
|
|
}
|
|
|
}
|