iview menu手动展开
本文介绍了iview menu手动展开的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
菜单数据是接口查询的,但是设置open-names 和 active-name 没有作用,如果data中的数据写死在页面上就可以。求大神提供解决办法。文档上面说:
updateOpened 手动更新展开的子目录,注意要在 $nextTick 里调用
updateActiveName 手动更新当前选择项,注意要在 $nextTick 里调用
解决方案
没试过手动展开,但是我之前碰到过刷新页面需要手动active某个菜单。代码如下
<Menu ref="leftMenu" theme="dark" width="auto" :active-name="defaultActive" @on-select="handleSelect">
<Menu-group title="menu1">
<Menu-item name="/menu1">
menu1
</Menu-item>
<Menu-item name="/menu2">
menu2
</Menu-item>
</Menu-group>
</Menu>
watch: {
'$route' () {
this.$refs.leftMenu.currentActiveName = '/menu2'
}
}
我想open-names应该也差不多吧,一下是i-menu源码
watch: {
openNames () {
this.$emit('on-open-change', this.openNames);
},
activeName (val) {
this.currentActiveName = val;
},
currentActiveName () {
this.updateActiveName();
}
}
这篇关于iview menu手动展开的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文