Please enable JavaScript.
Coggle requires JavaScript to display documents.
Konstruktor vs. ngOnInit (podsumowanie (konstruktor wywołuje się przed…
Konstruktor vs. ngOnInit
-
Konstruktor nie jest częścią Angulara. Jest to metoda, która jest dostępna w każdej klasie języka TypeScript. Jest odpowiedzialny za stworzenie instancji klasy i jest to metoda, która wywołuje się jako pierwsza, gdy powstaje obiekt klasy.
W Angularze konstruktor używany jest przede wszystkim do wstrzykiwania zależności na przykład angularowych serwisów.
Oczywiście konstruktora w klasie nie musimy posiadać, ale czasami jest to wymagane. Jednym z przypadków jest gdy rozszerzamy (extends) inną klasę.
-
-
-
Metoda ta należy do Liveceycle Hooks czyli metod, za pomocą których kontrolujemy cykle życia komponentu. Jest ich więcej.
Konstruktor zawsze wywołuje się przed metodą ngOnInit. Co oznacza, że w konstruktorze nie mamy dostępu do pól oznaczonych dekoratorem Input(). Wartości tych pól dostępne będą dopiero w ngOnInit i jest to jedna z ważniejszych różnic.
Konstruktor może nam posłużyć do inicjalizacji prostych zmiennych. Nie umieszczamy tam żadnej skomplikowanej logiki. Jeżeli chcemy wywołać zewnętrzne API, skomplikowane obliczenia zróbmy to w ngOnInit.
Najlepszym wyjściem jest użycie konstruktora jako miejsca do wstrzykiwania zależności, a wszelkie pozostałe inicjalizacje danych wykonać w metodzie ngOnInit.
podsumowanie
-
konstruktor nie jest obowiązkowy, ale służy do wstrzykiwania zależności
-
-
-
-
-
-
-