element Drawer 中嵌套路由,页面刷新导致路由跳转错乱问题

本文探讨了在Vue后台管理项目中遇到的问题:如何在已存在二级路由的菜单页中,通过Element UI的Drawer组件实现一个侧滑屏弹框,并在弹框内部进行路由切换。作者发现由于Drawer的动画效果导致路由跳转失败。解决方案包括延迟跳转和利用Drawer的open回调进行路由操作。
摘要由CSDN通过智能技术生成

问题背景: 我的项目是类似后台管理项目,本身已经有二级路由了,但是产品提出需求,要在某个菜单页中增加一个弹框,以侧滑屏形式出现,并且弹框中也要有路由的切换,于是我选择了用element来实现这个需求

问题:我在父组件的drawer中又增加了一层路由

 在父组件中有个按钮,点击按钮,显示drawer并且跳到指定的路由

 

 问题出现,本应该跳转到‘editCourse’组件,但是页面却没有跳转!而是去了我默认打开drawer的路由地址

查出问题:是因为drawer这个组件本身带有一个动画,在打开弹框并跳转路由的时候,drawer这个组件的dom可能还没有渲染完成,所以,没有跳转成功

解决办法

1、在父组件点击按钮的时候,增加一个延迟,大概是0.3S(因为动画的时间是0.3S),延迟之后再进行路由跳转,

2、在父组件点击按钮的时候,给drawer组件的open回调事件赋值,在回调事件中,进行路由跳转!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值