Angular的ELSE语句在IF为真后仍然执行,位于subscribe方法中。
创始人
2024-10-24 03:00:51
0

出现这种情况的原因可能是异步代码的执行顺序问题,例如在subscribe方法中执行了异步操作,而IF语句是同步执行的。 建议将ELSE语句中的代码放到IF语句内部,以确保在IF语句执行成功后不会执行ELSE语句。以下是代码示例:

this.userService.getUserById(this.userId).subscribe( (user) => { if(user) { this.currentUser = user; console.log('User found'); // 在此处编写成功获取用户的代码 } else { console.log('User not found'); // 将ELSE中的代码移到IF内部 this.router.navigate(['/not-found']); return; } } );

如果您需要在IF语句外部使用ELSE语句中的代码,则建议将其封装在回调函数中,在异步操作完成后再调用。例如:

this.userService.getUserById(this.userId).subscribe( (user) => { if(user) { this.currentUser = user; console.log('User found'); // 在此处编写成功获取用户的代码 this.executeElseCode(); } else { console.log('User not found'); this.executeElseCode(); } } );

executeElseCode() { // 在此处编写ELSE语句中的代码 this.router.navigate(['/not-found']); return; }

相关内容

热门资讯

透视中牌率!wepoker开辅... 透视中牌率!wepoker开辅助能查到吗,wepoker辅助软件价格(透视)线上教程(有挂解密)在进...
透视app!wepoker私人... 透视app!wepoker私人局透视方法,wepokerplus辅助(透视)透明教程(有挂工具)we...
透视总结!wepoker私人局... 透视总结!wepoker私人局俱乐部怎么进,wepoker俱乐部辅助(透视)必备教程(有挂规律)1、...
透视游戏!wepoker透视底... 透视游戏!wepoker透视底牌,wepoker-h5下载(透视)wepoke教程(有挂介绍)1)w...
透视线上!we-poker软件... 透视线上!we-poker软件,wepoker插件辅助(透视)2025新版技巧(有挂教程)1、在we...
透视辅助!wepoker网页版... 透视辅助!wepoker网页版透视方法,wepoker买脚本靠谱吗(透视)2025新版(有挂解说);...
透视系统!wepoker分析,... 透视系统!wepoker分析,wejoker辅助软件价格(透视)AA德州教程(有挂脚本);1.wej...
透视黑科技!we-poker辅... 透视黑科技!we-poker辅助软件教程,wepoker插件功能辅助器(透视)透明挂教程(有挂解密)...
透视辅助!we poker辅助... 透视辅助!we poker辅助器v3.3,we-poker靠谱吗(透视)揭秘教程(有挂详情)1、we...
透视规律!wepoker有没有... 透视规律!wepoker有没有透视方法,wepoker破解版内购(透视)靠谱教程(有挂攻略)1、金币...