问题场景:
在ant design vue pro前端框架中,菜单是通过路由来配置,如下图所示,“测试版本”菜单下有“测试计划列表”数据,当点击某个计划数据进入其他页面后,“测试版本”菜单的样式就失去选中状态了
这里涉及一个问题,“测试计划”数据对应的路由和“测试版本”路由之间不是父子关系,在网上搜索的时候,较常看到如何设置父级菜单的选中状态,这里的解决办法不用管是否是父子关系。
解决思路:
先看下ant design vue pro的layout布局方式(前人基础上的工程):
基础布局中,通过side-menu组件控制布局,找到side-menu组件:
从引用关系,依赖index组件,再找到index组件:
发现index中依赖menu组件,再找到menu(就是这里添加代码)
发现在有个更新菜单的函数,里面会根据路由的path动态拼装选中的路由地址
解决方法:就在拼装好this.selectedKeys后,加入一个判断,根据当前所选路由,判断是否要在this.selectedKeys中添加要选中的菜单路由path。
测试结果:目前好用。
可以看到,路由已经切到测试计划,但是“测试版本”菜单仍然是选中状态。
标签:测试计划,菜单,menu,vue,选中,组件,路由 来源: https://www.cnblogs.com/xiaxiaoxu/p/15264359.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。