Element-UI 侧边菜单栏收缩

4,538 阅读16分钟

整体布局

<el-container>
  <el-header>Header</el-header>
  <el-container>
    <el-aside width="200px">Aside</el-aside>
    <el-main>Main</el-main>
  </el-container>
</el-container>

头部布局

样式:两端对齐

display: flex;    justify-content: space-between;

在中添加div(i便签没有事件属性)

<div class="toggle-button" @click="toggleCollapse" >

折叠图标

<i class="el-icon-s-fold " style="font-size:20px" ></i>

折叠按钮组(官方文档示例)

<!--按钮-->
<el-radio-group v-model="isCollapse" style="margin-bottom: 20px;"> 
 <el-radio-button :label="false">展开</el-radio-button>  
<el-radio-button :label="true">收起</el-radio-button>
</el-radio-group>

最右边菜单

<!--用户菜单-->      
<el-dropdown style="text-align:right">       
 <i class="el-icon-setting" style="font-size:15px"></i>        
<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>         
<span style="font-size:15px;" >王小虎</span>      
</el-dropdown>

左侧菜单栏+主体

<el-container>
<!--页面主题区域-->  
<el-container> 
 <!--侧边栏-->  
<el-aside width="200px">  
<!--侧边栏菜单导航区域-->      
<el-menu     
 :collapse="isCollapse"      
background-color="#545c64"      
text-color="#fff"     
 active-text-color="#ffd04b">      
<!--一级菜单-->      
<el-submenu index="1">       
<!--一级菜单模板-->        
<template slot="title">         
<!--一级菜单图标-->          
<i class="el-icon-location"></i>          
 <!--一级菜单文本-->          
<span>导航一</span>        
</template>        
 <!--二级菜单-->          
<el-menu-item index="1-1">          
<template slot="title">        
 <!--二级菜单图标-->         
 <i class="el-icon-location"></i>           
<!--二级菜单文本-->          
<span>选项一</span>        
</template>          
</el-menu-item>          
<el-menu-item index="1-2">          
<template slot="title">         
<!--二级菜单图标-->          
<i class="el-icon-location"></i>          
 <!--二级菜单文本-->          
<span>选项二</span>       
 </template>          
</el-menu-item>      
</el-submenu>    
</el-menu>  
</el-aside>
<el-main>main</el-main>

js :设置默认值,点击函数将菜单栏展开默认值取反

<script>  
export default {    
data() {      
return {        isCollapse: false      };    
},   
 methods: {            
// 点击按钮,切换菜单的折叠与展开    
toggleCollapse () {      
this.isCollapse = !this.isCollapse    },    
}  }
</script>

样式

<style>*{  margin: 0;  padding: 0;}.elc{  height: 100%;}  .el-menu-vertical-demo:not(.el-menu--collapse) {    width: 200px;    min-height: 400px;  }  .el-main{    background-color: #eeeeef;  }  .el-header{    padding-top:1% ;    background-color: #d1dfff;    display: flex;    justify-content: space-between;  }</style>