抱歉,刚开始使用角度和异步编程,我试图将rxjs observate的值赋给全局变量,如下所示:
public currentUser: User; this.userService.getAuthUser().subscribe(user => { this.currentUser = user; }); console.log(this.currentUser.name);
我知道rxjs是异步的,所以 undefined 在最后一行 console.log(...) . 有没有什么方法可以把从可观察到的值赋给全局变量?像是等待 getAuthUser() 完成的异步方法,然后将其分配给全局变量。
undefined
console.log(...)
getAuthUser()
请尝试下面的代码,这将为 user 只有当数据可用时:
user
public currentUser: User; this.userService.getAuthUser().subscribe(user => { this.currentUser = user; console.log(this.currentUser.name); });