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辅助器(真实有挂);致您一封信;亲爱wep...
终于懂了"wepok... 【福星临门,好运相随】;终于懂了"wepoker有辅助插件吗"开挂(透视)wepoker辅助器是真的...
透视了解"广东雀神智... 透视了解"广东雀神智能辅助插件"开挂(透视)wpk控制牌是真的吗(果真有挂);一、广东雀神智能辅助插...
记者发布"神兽互娱辅... 记者发布"神兽互娱辅助免费"开挂(透视)拱趴大菠萝自动计算机器人(有挂教学);详细神兽互娱辅助免费攻...
透视智能ai"uup... 透视智能ai"uupoker有透视吗"开挂(透视)德州局怎么透视(果真有挂);免费下载原版,在软件透...
透视有挂"传送屋ap... 透视有挂"传送屋app辅助脚本怎么设置密码"开挂(透视)德普之星透视辅助软件激活码(有挂功能);致您...
必备教程"微信小程序... 必备教程"微信小程序雀神挂件怎么安装"开挂(透视)hhpoker是真的吗(有挂工具);AI辅助机器人...
大家学习交流"浙江游... 大家学习交流"浙江游戏辅助器"开挂(透视)hhpoker透视方法(有挂方法);一、AI软件牌型概率发...
透视科技"福建天天开... 透视科技"福建天天开心辅助工具视频"开挂(透视)wepoker可以透视码(有挂秘籍);福建天天开心辅...