如果你想把导航菜单设置为一个页面,并且内容也设置为一个页面,像下图这种
可以参考一下官网给出的标签
用于布局的容器组件,方便快速搭建页面的基本结构:
<el-container>
:外层容器。当子元素中包含<el-header>
或<el-footer>
时,全部子元素会垂直上下排列,否则会水平左右排列。
<el-main>
:主要区域容器。
<el-footer>
:底栏容器。
没发直接将一个div分在两个页面中给其设置长度
直接写的话他会把菜单部分成一个block元素宽度是100%,导致后面的user页面会另起一行显示,这就特别影响页面效果
所以要将菜单栏页面和router-view所对应的用<el-container></el-container>包裹起来
el-main:主要区域容器。
写法如下:
Page.vue页面(也就是菜单导航页面)
// 主容器container
<el-container>
// el-col代表长度
<el-col :span="3">
<el-menu default-active="1" class="el-menu-vertical-demo">
<el-menu-item index="1" @click="btn1">
<i class="el-icon-menu"></i>
<span slot="title">用户管理</span>
</el-menu-item>
<el-menu-item index="2" @click="btn2">
<i class="el-icon-setting"></i>
<span slot="title">商品管理</span>
</el-menu-item>
</el-menu>
</el-col>
// 内容容器main
<el-main>
<router-view></router-view>
</el-main>
</el-container>
el-main中有默认值,不把padding去掉的话就会有空隙
不想要间距的话直接padding:0即可
当然你也可以只写一个container或者main也是可以实现的,最好还是两个都写上