#iview关于menu结合router问题
1. Menu.Item下router问题:
直接在Menu标签上绑定on-select事件,可以获取到name(name为元素绑定name)
1 <Menu @on-select="navigateTo"> 2 ... 3 </Menu> 4 5 methods: { 6 navigateTo (name) { 7 this.$router.push(name); 8 } 9 }
2. 页面刷新后, Menu组件对应不展开和active
需要在组件mounted的时候手动驱动active。
第一步: 在menu上绑定
:open-names="open"
:active-name="active"
第二步: 在mounted里面去获取当前路由和其父级相关信息,修改open, active,然后
1 this.open = ["1", "1-2"]; //匹配到的父级name, array 2 this.active = "name-what"; //当前name 3 this.$nextTick(() => { 4 this.$refs.side_menu.updateOpened(); 5 this.$refs.side_menu.updateActiveName(); 6 });