Rxjs присваивает значение в наблюдаемой глобальной переменной - PullRequest
0 голосов
/ 18 февраля 2019

Извините, новичок в угловом и асинхронном программировании, я пытаюсь присвоить значение из наблюдаемой rxjs глобальной переменной, что-то вроде этого:

public currentUser: User;

this.userService.getAuthUser().subscribe(user => {
  this.currentUser = user;
});
console.log(this.currentUser.name);

Я понимаю, что наблюдаемая rxjs является асинхронной, поэтому значение будетundefined в последней строке console.log(...).Есть ли способ, которым я могу присвоить значение от наблюдаемой к глобальной переменной?Что-то вроде ожидания завершения асинхронного метода getAuthUser() и присвоения его глобальной переменной.

1 Ответ

0 голосов
/ 18 февраля 2019

Попробуйте код ниже, это присвоит значение user только при наличии данных:

public currentUser: User;

this.userService.getAuthUser().subscribe(user => {
   this.currentUser = user;
   console.log(this.currentUser.name);
});
...