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有没有... 无需打开直接搜索加微信客服(136704302)咨询了解wepoker有没有挂辅助器目前(微信:13...
最新技巧“wepoker靠谱不... 您好:wepoker靠谱不这款游戏是可以开挂的,软件加【添加微信客服136704302】确实是有挂的...
免费测试版“wepoker有挂... 您好:wepoker有挂吗透视软件的软件,软件加客服确实是有挂的,很多玩家在这款游戏中打牌都会发现很...
一分钟了解“微扑克发牌规律”开... 微扑克发牌规律是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我微信...
重大消息“wepoker可以透... 您好,wepoker可以透视开挂吗这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302...
玩家攻略“wpk透视插件怎么安... 无需打开直接搜索;操作使用教程:玩家攻略“wpk透视插件怎么安装”开挂辅助器(透视)曝光教程1、界面...
教程攻略“wepoker能开挂... 您好:wepoker能开挂吗这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用...
玩家必看教程“wepoker透... 您好:wepoker透视真的吗这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多...
一秒答解“wepoker真的可... 您好:wepoker真的可以开挂透视吗这款游戏是可以开挂的,软件加【添加微信客服136704302】...