如何在角度订阅后执行某些操作

kzr*_*sal 7 subscribe observable angular

我想返回一个布尔值,但是"if"条件中的变量是未定义的.

function() {
    this.menuDataService.getMenu()
      .subscribe(res => {
       this.mainMenus = res.MainMenus;
       console.log(this.mainMenus);
    });

    console.log(this.mainMenus);

    if(this.mainMenus == 1){
       return true;
    }
    else {
      return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

Pan*_*kar 2

你终于可以结束活动了observable,所以subscription被叫了。

this.menuDataService.getMenu()
.finally( () => { console.log(this.mainMenus) });
.subscribe(res =>{
   this.mainMenus = res.MainMenus;
   console.log(this.mainMenus);
});
Run Code Online (Sandbox Code Playgroud)

  • 为什么不使用`subscribe`的第三个回调? (2认同)