06. Vue管理系统速成

5555 字约 12 分钟读完3744 次阅读更新于 2026/5/3

盒子模型拆分网页

image.png

官网菜单效果

image.png
image.png
当且仅当标签是 el-menu-item 的时候,index 才会生效

$route.path 是当前浏览器正在访问的路由
格式: /xxx
image.png

padding: 20
icon: width 24 + margin 5
20 + 24 + 5 = 49

image.png

我们要实现的效果

image.png

布局

logo
logo1.png

设置
菜单高亮颜色:image.png** **#1890ff
一级菜单颜色:image.png #001529
二级菜单颜色:image.png #000c17

菜单和头部阴影

box-shadow: 2px 0 6px rgba(0,21,41,.35);

整体框架

<el-container>
    <el-aside>
	</el-aside>

 	<el-container>
    	<el-header>
		</el-header>

    	<el-main>
    	</el-main>
 	</el-container>
</el-container>

logo

<div style="height: 60px; line-height: 60px; font-size: 20px; display: flex; align-items: center; justify-content: center">
  <img src="@/assets/logo1.png" style="width: 30px;" alt="">
  <span class="logo-title" v-show="!isCollapse">Honey2024</span>
</div>

菜单

<el-menu router :collapse="isCollapse" :collapse-transition="false" background-color="#001529"
         active-text-color="#fff" text-color="rgba(255, 255, 255, 0.65)" :default-active="$route.path"
         style="border: none">
  <el-menu-item index="/">
    <i class="el-icon-s-home"></i>
    <span slot="title">系统首页</span>
  </el-menu-item>
  <el-submenu index="2">
    <template slot="title"><i class="el-icon-menu"></i><span>信息管理</span></template>
    <el-menu-item index="/user">用户管理</el-menu-item>
    <el-menu-item index="/admin">管理员管理</el-menu-item>
  </el-submenu>
</el-menu>

菜单样式

头部布局
左侧

<i :class="collapseIcon" @click="handleCollapse" style="font-size: 26px"></i>
    <el-breadcrumb separator="/" style="margin-left: 20px">
    <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
    <el-breadcrumb-item :to="{ path: '/' }">课程管理</el-breadcrumb-item>
</el-breadcrumb>

右侧

<div style="flex: 1; display: flex; justify-content: flex-end; align-items: center">
    <i class="el-icon-quanping" @click="handleFullScreen" style="font-size: 25px"></i>
    <el-dropdown placement="bottom">
      <div style="display: flex; align-items: center; cursor: pointer">
        <img src="@/assets/logo1.png" alt="" style="width: 40px; height: 40px; margin: 0 5px">
        <span>管理员</span>
      </div>
      <el-dropdown-menu slot="dropdown">
        <el-dropdown-item>个人信息</el-dropdown-item>
        <el-dropdown-item>修改密码</el-dropdown-item>
        <el-dropdown-item>退出登录</el-dropdown-item>
      </el-dropdown-menu>
    </el-dropdown>
</div>

iconfont 自定义图标

设置
image.pngimage.png
下载后解压,拷贝这几个文件到你项目 css 静态目录下
image.png
在 main.js 里引入 iconfont.css 即可

主题色设置

https://element.eleme.cn/#/zh-CN/theme
image.png
直接复制 theme 文件夹到项目里,在 mian.js 里引入即可

直播后的完整代码

尽管我提前写了一遍,但是直播写的布局思路跟我备课的布局还是不一样,下面放出我备课的布局代码:

备课的布局完整代码