背景:在对项目进行bug走查的时候,测试人员突然提出项目左侧菜单栏再次点击时候要进行页面刷新,当时我真的懵了,vue项目了router还能在当前页面进行再次刷新!!!我怀着疑惑上网查询、咨询足足使用了我3h,多宝贵的时间呀,就这么浪费掉了。最后,好歹,功夫不负有心人,还真有大佬讲到该部分的内容,通过自己尝试最终将问题解决。下面将我的问题解决方法分享给大家。

参考:https://blog.csdn.net/tq1711/article/details/108386307?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control

1.本章问题的解决需要使用vue中的provide、inject。
2.首先,需要在父组件中设置“provide”以及“reload”,如下代码:
app-main标签中的布尔判断v-if,provide定义,布尔变量isRouterAlive的定义。
在这里插入图片描述
重要的一部分,methods中的reload方法设置布尔值的变化。
在这里插入图片描述
3. 子组件,左侧菜单栏组件中“inject”的使用见下图:
定义inject,调用父组件中的reload方法。
在这里插入图片描述
在这里插入图片描述
今天的分享就到这里啦,欢迎大家一起来尝试、监督。😊o( ̄▽ ̄)ブ

Logo

前往低代码交流专区

更多推荐