Запуск функции в шаблоне - плохая практика.Вы можете иметь переменную, соответствующую статусу пользователя, и хранить там data.success
.Вызовите вашу асинхронную функцию в ngOnInit
и присвойте результат переменной.
ngOnInit() {
return this.http.get('http://localhost:3000/users/validateToken')
.map(res => res.json()).subscribe(data => this.isLoggedIn = data.success);
}
И шаблон будет выглядеть как
*ngIf="isLoggedIn"
Как насчет ожидания ответа асинхронной функцииВам не нужно беспокоиться об этом, если результат придет и будет присвоен переменной - механизм DI обнаружит это изменение и обновит шаблон
Совет Как я догадываюсь изres.json()
вы используете не HttpClient
, а Http
, который устарел.Используйте HttpClient
и HttpClientModule
.