Używam następującego kodu do przekazywania danych do trasy:
this.router.navigateByUrl('/myurl/goes/here', { state: { data: someData });
Teraz w komponencie, do którego przechodzę, używam następującego kodu, aby pobrać dane, które przekazałem z pierwszego komponentu.
this.incomingData = window.history.state.data;
Teraz problem pojawia się, gdy ponownie ładuję drugi komponent (komponent B), pojawia się błąd informujący, że moje dane, które przekazałem, są teraz niezdefiniowane. (te przychodzące dane stają się niezdefiniowane).
Czy to, co robię, jest prawidłowym sposobem przekazywania i odbierania danych między komponentami, czy też robię coś źle?
1
marvin ralph
16 grudzień 2019, 20:23
1
Oto link, który pomoże ci przekazać dane i pobrać je w innym komponencie stackoverflow.com/questions/44864303/…
– kushal shah
16 grudzień 2019, 20:35
1 odpowiedź
Użyj usługi kątowej ActivatedRoute
w komponencie, do którego się wybierasz
constructor(activeRoute: ActivatedRoute) {
// this.activeRoute.snapshot.data
console.log('Route Data', this.activeRoute.snapshot.data)
}
-1
miladfm
16 grudzień 2019, 21:27