From 8209ece89c9ee3ba78969433b60b4d20af6b9421 Mon Sep 17 00:00:00 2001
From: 杨磊 <505174330@qq.com>
Date: 星期一, 31 三月 2025 18:41:31 +0800
Subject: [PATCH] 公共组件

---
 src/layout/index.vue |  112 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 110 insertions(+), 2 deletions(-)

diff --git a/src/layout/index.vue b/src/layout/index.vue
index d7b591b..490107c 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -1,5 +1,26 @@
 <template>
   <div class="homeLayoutBox">
+    <div class="leftMenu">
+      <div class="leftMenuTitle" @click="$router.push('/home')">鐜嬫案鐐庨櫌澹�</div>
+      <div class="leftMenuContent">
+        <p>瀛︽湳鎬濇兂浼犳壙</p>
+        <p>澶氱淮搴︽暟鎹簱</p>
+      </div>
+      <div class="leftMenuList">
+        <div
+          class="menuItem"
+          :class="{ active: $route.path == item.path }"
+          v-for="(item, index) in menuList"
+          :key="index"
+          @click="$router.push(item.path)"
+        >
+          <div>
+            <i :class="item.icon"></i>
+          </div>
+          <div class="menuText">{{ item.name }}</div>
+        </div>
+      </div>
+    </div>
     <div class="pageContentBox">
       <keep-alive v-if="keepAliveList.length > 0" :include="keepAliveList">
         <router-view />
@@ -12,16 +33,41 @@
 <script>
 import { mapState } from "vuex";
 export default {
-
   computed: {
     ...mapState(["userInfo", "keepAliveList"]),
   },
   watch: {
     $route(to, from) {
       if (to.meta.keepAlive && this.keepAliveList.indexOf(to.name) == -1) {
-        this.$store.commit("addKeepAlive", to.name); 
+        this.$store.commit("addKeepAlive", to.name);
       }
     },
+  },
+  data() {
+    return {
+      menuList: [
+        {
+          name: "骞磋氨",
+          path: "/chronology",
+          icon: "el-icon-s-home",
+        },
+        {
+          name: "瀛︽湳鎴愭灉",
+          path: "/achievements",
+          icon: "el-icon-s-home",
+        },
+        {
+          name: "鑽h獕濂栭」",
+          path: "/honor",
+          icon: "el-icon-s-home",
+        },
+        {
+          name: "瀛︾敓鍚嶅綍",
+          path: "/directory",
+          icon: "el-icon-s-home",
+        },
+      ],
+    };
   },
 };
 </script>
@@ -30,8 +76,70 @@
 .homeLayoutBox {
   width: 100%;
   height: 100%;
+  display: flex;
+  // background-image: url("@/assets/images/homeBg.png");
+  // background-repeat: no-repeat;
+  // background-size: 100% 95%;
   .pageContentBox {
     min-height: calc(100% - 525px);
   }
+  .active{
+    background: #6F5A3A;
+    color: #fff;
+  }
+  .leftMenu {
+    width: 200px;
+    height: 100%;
+    background: #937950;
+    display: flex;
+    flex-direction: column;
+    .leftMenuTitle {
+      width: 100%;
+      height: 50px;
+      line-height: 50px;
+      text-align: center;
+      color: #fff;
+      font-size: 24px;
+    }
+    .leftMenuContent {
+      font-size: 20px;
+      line-height: 30px;
+      color: #fff;
+      margin: 10px 20px;
+      padding: 10px 0;
+      text-align: center;
+      border-top: 1px solid #fff;
+      border-bottom: 1px solid #fff;
+    }
+    .leftMenuList > menuItem:first-child {
+      border-top: 1px solid #fff;
+    }
+    .leftMenuList {
+      display: flex;
+      flex-direction: column;
+      justify-content: space-around;
+      border-top: 1px solid #b9a587;
+      margin-top: 20px;
+
+      .menuItem {
+        width: 100%;
+        display: flex;
+        flex-direction: column;
+        justify-content: center;
+        align-items: center;
+        text-align: center;
+        color: #decaac;
+        font-size: 24px;
+        border-bottom: 1px solid #b9a587;
+        height: 180px;
+        .menuText {
+          line-height: 50px;
+        }
+        i {
+          font-size: 34px;
+        }
+      }
+    }
+  }
 }
 </style>

--
Gitblit v1.9.1