W ngOnInit
, mój komponent uzyskuje listę użytkowników tak:Jak wymusić odświeżenie w usłudze Obserwowalne w Angular2?
this.userService.getUsers().subscribe(users => {
this.users = users;
});
i wdrażania userService.getUsers() wygląda następująco:
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'));
}
Teraz, w innym składnikiem, mam formularz, który może stworzyć nowego użytkownika. Problem polega na tym, że kiedy używam tego drugiego komponentu do utworzenia użytkownika, pierwszy komponent nie wie, że powinien wysłać nowe żądanie GET do backendu, aby odświeżyć swój widok użytkowników. Jak mogę to powiedzieć?
Wiem, że najlepiej byłoby pominąć to dodatkowe żądanie HTTP GET, i po prostu dołączyć dane, które klient już posiada, po tym, jak POST wstawił dane, ale zastanawiam się, jak to będzie w przypadku, gdy nie jest to możliwe z jakiegokolwiek powodu.
Mnóstwo świetnych odpowiedzi tutaj. Poszedłem z podejściem, które zaproponowałeś i działa świetnie. – Josh1billion
Fajnie, cieszę się, że to działa dla ciebie. – estus
jak się wypisać przy użyciu tej metody? –