В ngOnInit
, мой компонент получает список пользователей, как так:Как принудительно обновить службу Observable в Angular2?
this.userService.getUsers().subscribe(users => {
this.users = users;
});
и осуществление userService.getUsers() выглядит следующим образом:
getUsers() : Observable<UserModel[]> {
return this.http.get('http://localhost:3000/api/user')
.map((res: Response) => <UserModel[]>res.json().result)
.catch((error: any) => Observable.throw(error.json().error || 'Internal error occurred'));
}
Теперь, в другом компоненте, у меня есть форма, которая может создать нового пользователя. Проблема в том, что, когда я использую этот второй компонент для создания пользователя, первый компонент не знает, что он должен сделать новый запрос GET для бэкэнд, чтобы обновить его представление о пользователях. Как я могу это сказать?
Я знаю, что в идеале я бы хотел пропустить этот дополнительный HTTP-запрос GET и просто добавить данные, которые у клиента уже есть, когда он ввел POST для вставки данных, но мне интересно, как это будет сделано в случае, если это невозможно по какой-либо причине.
Много больших ответов здесь. Я пошел с предложенным вами подходом, и он отлично работает. – Josh1billion
Ницца, рад, что это работает для вас. – estus
как отписаться от этого метода? –