Я просто не понимаю, как работает async / await; вот в чем я считаю проблема. Я пытаюсь загрузить данные из моего сервиса в мой компонент, но я получаю неопределенное. Но правильные данные загружаются правильно из функции, которую я вызываю. Я предполагаю, что это способ реструктурировать код так, чтобы async / await работал, но я понятия не имею, как.
К сожалению, учебники по async / await просто запутали меня больше.
Я пытался поиграть с установкой async / await в разных местах, но, честно говоря, я не знаю, что делаю.
Это функция в моем компоненте, вызывающая другую функцию из моего UserService
async onSubmit() {
console.log(await this.userservice.currentusercountry());
}
Это функция в моем пользовательском сервисе
async currentusercountry() {
let x;
this.currentuser().subscribe(value => {
console.log(value.country.toString());
x = value.country.toString()
});
await console.log(x);
return x;
}
Я ожидаю получить что-то подобное в моем console.log
India user.service.ts:65
India user.service.ts:68
India pg.component.ts:43
Но вместо этого я получаю
undefined user.service.ts:68
undefined pg.component.ts:43
India user.service.ts:65