uni-simple-router
uni-simple-router copied to clipboard
全局守卫的执行顺序2.0.8版本跟2.0.7版本的不一致
问题描述 进过使用两个版本的开发过程中发现,2.0.7正式版的 全局守卫会比启动页的生命周期先执行,而2.0.8的beta版本,全局守卫会比启动页面的生命周期后执行,我现在不知道到底那个是有问题的!
复现步骤 2.0.7版本的router.beforeEach中的回调函数中会比启动页的生命周期先执行,做完异步之后next之后,页面的生命周期才会开始执行,而2.0.8beta版本中的router.beforeEach中的表现则相反,加载启动页面,先执行了页面的生命周期,后执行了router.beforeEach中的异步,不知道是否是存在问题的呢?
因为我在没有改变业务代码的前提下,两个版本的插件都测试了一遍,确实有一个先后顺序不一致的问题,可能我描述的有点不清晰,麻烦作者可以自己亲自测一下
代码无非就是在里面做了一次登陆操作
router.beforeEach((to, from, next) => {
if(!store.state.loginInfo?.userId){
store.dispatch("LoginByCode").then(() => {
next();
})
}else{
next();
}
});
// 而页面无非就是一个简单的onload业务代码
onload(){
// 业务代码
}
两个版本测下来,确实不一致,麻烦作者看一下,谢谢