Layout.vue 2.2 KB
<script setup>
import Head from '@/components/head.vue'
import { ref } from 'vue'
import router from '@/router/index';
const list = ref([
  { path: '/home', name: '首页' },
  { path: '/', name: '课程' },
  { path: '/note', name: '笔记' },
  { path: '/news', name: '消息' },
  { path: '/disk', name: '云盘' },
  { path: '/address', name: '通讯录' },
  { path: '/account', name: '账号管理' },
  { path: '/manage', name: '班级管理' }
])
const navigator = (path) => {
  console.log(path);
  router.push(path)

}
</script>

<template>
  <div class="counter">
    <!-- 封住头部组件 -->
    <Head></Head>
    <div class="banner">
      <!-- 左边部分 -->
      <div class="left">
        <div class="pic">
          <img src="@/static/Avatar.png" alt="" />
        </div>
        <div class="name">XXX</div>
        <div class="cont">
          <div class="li" v-for="item in list" :key="item" @click="navigator(item.path)">{{ item.name }}</div>
        </div>
        <div class="one"></div>
      </div>
      <!-- 右边二级路由 -->
      <div class="right">
        <!-- 这里是二级路由的出口 -->
        <router-view></router-view>
      </div>
    </div>
  </div>
</template>
<style lang="scss" scoped>
.counter {
  background-color: #f2f2f2;
  .banner {
    display: flex;

    .left {
      position: relative;
      margin: 40px 40px 0;
      width: 15%;
      background-color: #6170c3;
      color: #fff;
      border-radius: 18px 18px 0 0;
      .pic {
        margin: 0 auto;
        padding-top: 50px;
        width: 75px;
        height: 75px;
        img {
          width: 100%;
          height: 100%;
          border-radius: 50%;
        }
      }
      .name {
        margin-top: 10px;
        text-align: center;
      }
      .cont {
        margin-top: 20px;
        .li {
          line-height: 50px;
          width: 100%;
          height: 50px;
          padding-left: 30px;
          box-sizing: border-box;
        }
        .li:hover {
          background-color: #4d5cb6;
        }
        .active {
          background-color: #4d5cb6;
        }
      }
      .one {
        background-color: pink;
      }
    }
    .right {
      width: 75%;
      background-color: #f2f2f2;
    }
  }
}
</style>