对不起, Angular 和异步编程的新手,我正在尝试将 rxjs observable 中的值分配给全局变量,如下所示:
public currentUser: User;
this.userService.getAuthUser().subscribe(user => {
this.currentUser = user;
});
console.log(this.currentUser.name);
我知道 rxjs observable 是异步的,所以值将是
undefined
最后一行 console.log(...)
.有什么方法可以将值从 observable 分配给全局变量?有点像等待 getAuthUser()
异步方法完成然后将其分配给全局变量。
最佳答案
试试下面的代码,这会将值赋给 user
仅当数据可用时:
public currentUser: User;
this.userService.getAuthUser().subscribe(user => {
this.currentUser = user;
console.log(this.currentUser.name);
});
关于angular - Rxjs 将 observable 中的值赋给全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54748211/