现在很多的后台管理系统都采用标签选项卡的布局,左边是导航栏固定,右边是对应的页面,每次点击左边的导航标题,只有右面的对应页面再切换,而vue要做标签选项卡,推荐使用& lt; router-link> & lt;/router-link>实现一个标签的效果,然后使用& lt; router-view> & lt;/router-view>实现插槽的效果,把对应的页面“塞进”去,具体实现看下面的案例:
1,这是标签选项卡的页,面布局就不说了,主要的是& lt; router-link:="。url”:关键="指数" v="(指数),在数据”在{{a.title}} & lt;/router-link>,其中,指向你要跳转的路径,这是关键,而& lt; router-view> & lt;/router-view>就是最终其他子页面要显示的地方
& lt; template> & lt; div类=癷ndex-box”比; & lt; nav> & lt; h2>导航& lt;/h2> & lt; !——所有的导航标题,进行路由跳转指向——比; & lt; router-link:="。url”:关键="指数" v="(指数),在数据”在{{a.title}} & lt;/router-link> & lt;/nav> & lt; div类=澳谌荨北? & lt; !——路由插槽:路由跳转的位置——比; & lt; router-view> & lt;/router-view> & lt;/div> & lt;/div> & lt;/template> & lt; script> 从“. ./. ./静态导入navData/数据/nav " 出口默认{ 名称:“指数”, 数据(){ 返回{ 数据:[] } }, 方法:{ init () { 这一点。数据=https://www.yisu.com/zixun/navData.navData; } }, 创建(){ this.init (); } }> 脚本 <风格范围>/*容器*/.index-box { 宽度:100%; 高度:100%; 背景:# 212224; 显示:flex; }/*左侧导航条*/nav { 宽度:260 px; 高度:100%; 背景:# 323437; 溢出:隐藏; 浮:左; }/*导航*/nav h2 { 颜色:# f2ffff; 保证金:10 px 0 10 px 10 px; }/*导航标题*/资产净值一个{ 显示:块; 宽度:100%; 高度:45 px; 颜色:# f2ffff; 背景:# 2 e3033; padding-left: 10 px; 行高:45 px; 字体大小:20 px; margin-bottom: 10 px; }/*右侧内容*/.content { flex: 1; 填充:20 px; } 风格>
2路由配置
这个案例中,默认显示的就是我标签选项卡的页面,所以其他子页面我就以这个页面配置的子路由
如果有其他需求,就再需要的地方配置子路由即可
从“Vue”进口Vue 从“vue-router”进口路由器//首页 从“. ./页面/进口标签选项卡”//页面一 从“. ./页面/进口PageOne PageOne”//页面二 从“. ./页面/进口PageTwo PageTwo”//页面三 从“. ./页面/进口PageThree PageThree” Vue.use(路由器); 出口默认新路由器({ 路线:[ {//默认显示的页面 路径:“/? 名称:“选项卡”, 组件:选项卡, 孩子:( {//子路由中默认显示的页面 路径:”, 名称:“PageOne”, 组件:PageOne }, { 路径:“PageTwo”, 名称:“PageTwo”, 组件:PageTwo }, { 路径:“PageThree”, 名称:“PageThree”, 组件:PageThree } ] } ] })
这里再提供一种情况:比如我默认显示的是登录页面,登录进入后是首页,是标签选项卡的布局,所以我只要给首页配置子路由就可以了
从“Vue”进口Vue 从“vue-router”进口路由器//导入HelloWorld从“@/组件/HelloWorld”//首页框架 从“. ./页面/进口指数指数”;//首页 从“. ./组件/功能/进口FunctionsIndex FunctionsIndex”;//数据源列的表 从“. ./组件/功能/进口FunctionsDbSource FunctionsDbSource”//角色管理 从“. ./组件/功能/进口FunctionsRoleManagement FunctionsRoleManagement”//登录 从“. ./页面/进口登录登录” Vue.use(路由器); 出口默认新路由器({ linkExactActiveClass:“法案”, 模式:“历史”, 路线:[ {//首页 路径:/索引, 名称:“指数”, 组件:指数, 孩子:( {//首页中默认显示统计页面 路径:”, 名称:“总”, 组件:FunctionsIndex }, { 路径:“DbSource”, 名称:“DbSource”, 组件:FunctionsDbSource }, { 路径:“RoleManagement”, 名称:“RoleManagement”, 组件:FunctionsRoleManagement } ] },//默认显示登录页面 { 路径:“/? 名称:“登录”, 组件:登录 } ] })vue子路由跳转实现标签选项卡