Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
demo需求分析:
图中菜单区域为header公用组件,点击相应的菜单选项跳转到对应的路由,在菜单下区域加载相应组件的内容。
以下两图分别为点击“我的电站”、“个人中心”的效果
demo结构介绍:
登录成功后,跳转到index页面,并默认显示index/userstation(我的电站),index为一个组件,其他各个子菜单为一个组件,公共header为一个组件。
路由配置代码:
header组件关键代码:
基于element-ui(只需要留意红框部分):element-ui知识请参考element-ui官网,handleselect函数调用时,告知父组件props中的active已经更新。
index.vue
解释:index.vue中引用header组件,并向header组件传入active,此active在子组件中需要被修改,因此需要使用.sync实现props在header组件与index组件*享,.sync相关知识可查询vuejs官网。
router-view用于挂载匹配到的路由组件(比如:userstation的内容)。
观察active的变化,当active变化时,push active的值到路由中,路由匹配到实现页面切换。
注:登录成功时this.$router.push('/index/userstation')
,所以进入index.vue时,默认显示我的电站菜单选项,路由默认为index/userstation。
总结
以上所述是小编给大家介绍的vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐),希望对大家有所帮助
上一篇: Vue项目中配置pug解析支持
下一篇: vue实现菜单切换功能