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; }

相关内容

热门资讯

第三方辅助挂!微乐小程序黑科技... 第三方辅助挂!微乐小程序黑科技,微信小程序修改器(透视)一直真的有挂(哔哩哔哩)微信小程序修改器透视...
第七分钟开挂!微乐小程序黑科技... 第七分钟开挂!微乐小程序黑科技,微乐小程游戏破解器下载(开挂)真是有挂(2026)1、微乐小程序黑科...
透视黑科技!微乐小程序黑科技,... 透视黑科技!微乐小程序黑科技,微乐游戏小程序辅助器免费苹果版(透视)其实是有挂(哔哩哔哩)1、下载好...
第4分钟开挂!微乐小程序黑科技... 第4分钟开挂!微乐小程序黑科技,微信小程序微乐安徽辅助(开挂)竟然真的是有挂(2026)1、微乐小程...
2026版辅助挂!微乐小程序免... 2026版辅助挂!微乐小程序免费黑科技,微信小程序修改器(透视)原来是真的挂(哔哩哔哩)1、首先打开...
五分钟神器!微乐小程序黑科技,... 五分钟神器!微乐小程序黑科技,微信微乐陕西小程序破解器(开挂)原来是真的挂(2026)1、微乐小程序...
第三方技巧!微乐小程序黑科技,... 第三方技巧!微乐小程序黑科技,微乐小程序免费黑科技在线下载(透视)总是真的是有挂(哔哩哔哩)一、微乐...
第2分钟脚本!微乐小程序黑科技... 第2分钟脚本!微乐小程序黑科技,小程序微乐贵阳捉鸡麻将挂(开挂)好像有挂(2026)1、很好的工具软...
此事引发广泛关注!微乐小程序免... 此事引发广泛关注!微乐小程序免费黑科技,微信小程序微乐陕西挖坑辅助(透视)真是是真的挂(哔哩哔哩)1...
第七分钟神器!微乐小程序免费黑... 第七分钟神器!微乐小程序免费黑科技,微乐麻将脚本掌上程序(开挂)都是真的有挂(2026)1、游戏颠覆...