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透视脚本免费,必赢教程(有挂技巧);拱趴大菠萝作弊方法软...
查到实测辅助!哈糖大菠萝怎么挂... 查到实测辅助!哈糖大菠萝怎么挂,hardrock作弊,技巧教程(有挂技巧);大神普及一款德州ai内幕...
一分钟揭秘!德普之星辅助器,w... 一分钟揭秘!德普之星辅助器,wepoker插件功能辅助器,解密教程(有挂教程);支持2-10人实时对...
玩家必知教程!we poker... 玩家必知教程!we poker插件,wepoker模拟器哪个,技巧教程(有挂攻略);人气非常高,ai...
总算了解!约局吧开挂神器是真的... 1、总算了解!约局吧开挂神器是真的吗,pokemmo手机版修改器,透视教程(有挂教程)(UU pok...
分享一款!pokemmo脚本最... 分享一款!pokemmo脚本最新版,如何下载wepoker安装包,我来教教你(有挂辅助);人气非常高...
科技通报!pokerworld... 科技通报!pokerworld软件,hhpoker是正规的吗,透明挂教程(有挂技巧);支持2-10人...
推荐十款!wepoker网页版... 推荐十款!wepoker网页版透视方法,hhpoker软件可以玩吗,黑科技教程(有挂技巧);《WPK...
发现一款!wepoker有辅助... 此外,数据分析德州(wepoker有辅助功能吗)辅助神器app还具备辅助透视行为开挂功能,通过对客户...
发现玩家!pokemmo辅助工... 《发现玩家!pokemmo辅助工具,佛手在线大菠萝智能辅助器,安装教程(有挂神器)》 佛手在线大菠萝...