当我们在路由鉴权俩面开头写入进度条开始和结束后,会出现的需要双击才会进入主页面问题。
当点击登录并且需要点击两次才能进入主页面时,很可能是因为存在异步操作导致的延迟。
在路由导航守卫的beforeEach
方法中,可以执行一些异步操作,例如登录验证或获取用户信息。这些异步操作可能需要一定的时间来完成,但在此期间,next()
方法被调用,这会导致路由跳转被中断或延迟。
解决方法
查看异步操作的具体代码,例如登录验证、获取用户信息等。
通过在login
函数前加上async
关键字,并在await
关键字前加上await
关键字,你可以将函数转化为异步函数,并且在必要的地方进行异步等待。
通过在validate
方法回调函数前加上async
关键字,将其转化为异步函数。然后,你在需要等待的地方使用了await
关键字,以确保异步操作完成后再执行下一步操作。
这样做的好处是避免了回调地狱(callback hell),使代码更加简洁易读,并且能够处理异步操作的返回值。
(如果有那些说的不对的地方,还请大佬指点,本人小白一枚,谢谢)