od Podstaw
6 godz. 45 min · Angular · Full-stack i Programowanie
Mateusz KuleszaSenior Software Developer, Konsultant, TrenerPierwsze dwa działy kursu są idealne dla osób które rozpoczynają swoją przygodę z Angularem i stanowią wprowadzenie do frameworka. Zaczynamy od prostych przykładów, gdzie budujemy formularz zapisu na newsletter. Jest to przykład pozornie prosty, ale dzięki łatwości z jaką Angular wprowadza dynamizm, manipulacje wyglądem a nawet animacje wcale taki nie będzie. Zobaczysz, że nawet prosty przykład możemy zamienić w interaktywny, dynamiczny interfejs, który wciągnie użytkownika!
W kolejnych sekcjach kursu nie robimy prostych ćwiczeń, ale krok po kroku budujemy prawdziwy projekt. Jeśli marzyło Ci się stworzenie i opubliklowanie eleganckiej strony WWW lub aplikacji z Twoim CV oraz listą projektów, to nie musisz marzyć dalej. Możesz podążać krok po kroku i z każdą lekcją budować własną stronę portfolio. Będziesz zaskoczony, że z podstawową znajomością JavaScript, HTML i CSS zaczniesz błyskawicznie tworzyć złożone eleganckie i interaktywne interfejsy użytkownika.
W kursie stawiam na produktywność. Koniec że żmudnym klepaniem setek lini HTML i CSS, koniec z zawiłym kodem jQuery. Wykorzystując bibliotekę Bootstrap i modyfikując gotowe elementy HTML możemy skupić się na tym co najważniejsze. Zobaczysz jak wykorzystać interpolacje i wiązania by struktura HTML i CSS zmieniała się sama po każdej akcji użytkownika. Dzięki poprawnemu użyciu mechanizmów Angulara, mozolna praca z DOM, którą znasz np. z jQuery staje się zbędna. Angular renderuje interfejs za Ciebie - prosto z danych które umieścisz w komponentach.
Już w pierwszych sekcjach kursu dowiesz się jak wykorzystać moduł formularzy w praktyce, by tworzyć automatyczne dynamicznie generowany formularze i pobierać z nich dane. Dowiesz się także jak znając wyłącznie podstawy JavaScript połączyć naszą stronę portfolio z serwerem i pobrać pliki JSON, w tym nasze projekty, opisy i zdjęcia ze zdalnego serwera!
Podczas pracy nad Twoim portfolio nie tylko poznasz podstawy pracy z angularem, ale w kilku lekcjach zagłębimy się na chwilę w samo działanie Angulara. O ile jest to wiedza zaawansowana, tak znajomość mechanizmów wykrywania zmian już na samym początku pracy z Angularem da Ci lepsze zrozumienie tego narzędzia i pozwoli pisać kod który będzie nie tylko prosty i czytelny ale też będzie działał błyskawicznie. W tym kursie nie tylko pokazuje jak czegoś użyć, ale kiedy, dlaczego oraz jak to działa od środka. Nawet jeśli Angular nie jest dla Ciebie nowością - ten kurs da Ci głębsze zrozumienie jego koncepcji.
Ten kurs przygotowałem dla osób początkujących w Angularze, ale w taki sposób by mógł on służyć także do powtórzenia, uporządkowania wiedzy czy uzupełnieniu braków dla osób które pracowały już z Angularem. Jeśli jesteś front-end developerem, ale jeszcze nie miałeś okazji zapoznać się z Angular, lub chcesz uzupełnić szczątkową wiedzę o fundamenty - to jest kurs dla Ciebie! Dodatkowo, jeśli zaczynasz przygodę z front-end ale masz już podstawy HTML i JavaScript, to kolejny ważny krok na Twojej drodze do kariery!
Angular 10+
Mamy już włączonego trupa mógłbym po prostu ze strony bus
trupa kopiować jakieś dodatkowe elementy i jeszcze jako HTML CSS to
naszego AP komponent HTML tak samo jak zwykłą po prostu strona
internetowa aczkolwiek tutaj siła potęga Mullera tkwi w tym że nie musimy budować
jednego wielkiego pliku HTML tylko możemy taką stronę podzielić na mniejsze
komponenty komponenty które później możemy wielokrotnie wykorzystać
i teraz komponenty wydzielane wyglądają bardzo podobnie mają HTML CSS jest
to komponent możemy sobie tak bogatego rysować podzielić na różne rodzaju
komponenty które mają różne role one są tak samo wyglądały ale będą pełniły
różne role będą służyły nam w różnych celach.
Całe nasze portfolio
nie będzie jedną stroną dodatkowe pod stronę byśmy jakąś nawigację
powiedzmy jakieś nawet na jakimś nawigacje i powiedzmy że mamy tu jakieś strony czy
tylko strona główna kontakt ona Galeria itd i chciałbym żeby
niektóre z tych właśnie zakładek żeby nas przekierować na inną stronę.
I teraz jeśli będziemy budować aplikacje typu Single Page no to będę chciał żeby
ten ekran się zmieniał ale bez ponownego ładowania strony z serwera.
Najprostszym sposobem na to jest tworzenie kilku komponentów gdzie każdy z
komponentów będzie prezentował całą nową stronę cały ekran troll szkodnik zobaczy i
po prostu zmieniając aktywnie wydzielony komponent będzie mógł zobaczyć inną stronę
czyli utworzy sobie tutaj na razie na sucho.
Pamiętasz Andy generator gdzie jak generator pozwalano wygenerować komponenty
czyli jeszcze jako komponent i generator komponentu.
I teraz tutaj ja nie będę to sugerował głównym katalogu byśmy jedynie w górnym
katalogu gdzie zaraz straszny bałagan pójdzie pod katalogi.
Czyli pomysł PO katalog adres pod strony
i stworzymy stronę com strona główna powiedzmy
i strona powiedzmy z naszymi portfolio czyli projekt
projekt i tworzę może jeszcze jakąś stronę about as na przykład
czyli wygeneruje sobie trzy komponenty na tych komponentów które będą reprezentowały
całą stronę będę chciał umieścić pewne elementy które
powodują tylko jakieś poszczególne funkcjonalności np.
taki na bar przycisk czy wyszukiwarkę.
Teraz nie chcemy tego samego HTML a
kopiować za każdym razem do każdego z tych ekranów od naszych stron
więc cały taki efekt na nawa też zamieni go na komponent
i to już w samym katalogu czyli engine generator komponent.
Tak samo tylko to w katalogu komponent i nazwę to nazwa nasz pasek nawigacyjny
i w ten sposób mogę utworzyć jakieś inne elementy tutaj w naszym przykładowy
dębów HTML u gdzie na przykład jakieś takie paski przewijania otworzyć jakąś
nawigację tego typu elementy na przykład też o HDR.
Czy taki pasek
jest jakimś z jakimś tekstem to też mogę to robić jako pod komponent
czyli zobacz mamy komponenty które pełnią rolę stron duże komponenty może tak to
zapamiętać i nieużywane bloki które też są konkurentami ale mają inną rolę.
Choć mam kilka stałych stron każdy z nich
występuje tylko raz i na każdym z tych stron mogę wielokrotnie
użyć któryś z tych komponentów na przykład robimy sobie pasek nawigacyjny i np.
choroba czyli taki pasek właśnie tutaj z tłem z jakimś tekstem którego możemy użyć
i zwrócił uwagę że tych poleceń jeszcze nie wykonałem.
Przygotowałem je z boku.
W tym momencie brakuje robić komitet z gitar zachować zmiany gdyby coś poszło
nie tak jakbym cały czas serwer uruchomiony nasz
i w osobnej karcie po prostu skupuje te wszystkie polecenia
i Englert po kolei będzie wykonywał te polecenia i wygeneruje odpowiedni
łotewskie pliki czyli Page jest komponent itd.
I innej wersji niż ta która jest w kursie.
No to może taki komunikat wystąpi czy się
wersje różnią jeśli masz tylko łącznik to powinno być tu to OK.
Zobaczymy.
Mamy komponenty ich strony czyli dokładnie te struktury które sobie tutaj
zapisały taką strukturę mi tutaj wygenerował komponenty i strony
tak to w ten sposób mogę odtworzyć sobie stronę Home komponent HTML tutaj
całą zawartość stąd przenieść powiedzmy do Home komponent
ale powiedzmy że ten nagłówek sam chcielibyśmy wykorzystać wielokrotnie na
różnych stronach czyli tutaj w AP komponent umieszcza.
Home czyli ten komponent Home komponent mieszkam w głównym mapie.
Oponenci na wybór tutaj jakiejś kultury HTML
czyli powiedzmy kopiuje sobie tutaj jakiś przykładowy może jakiś prostszy taki.
Tu i teraz cały ten Napier komponent jak pamiętasz.
On ma specjalną nazwę AP nazwa.
Tak to jest lektor i teraz ten lektor mogę
sklecić na każdej stronie na której potrzebuje na główkę czy nagłówek dodać do
strony Home mogę dodać go do strony projekt np.
.
I mogę dodać do strony Bałtów np.
w tym miejscu czy gdziekolwiek użyję tego Bara jeśli zmienię HTML tutaj w
tym głównym naszym komponenty to wszędzie gdzie jest wystawione na każdym miejscu.
Zmieni się też to elegancko.
Zobaczmy jak to nam zadziała.
Mamy na to jeszcze nie działa.
Teraz jeśli użycie innych stron widzimy mieście np.
w naszym głównym AP komponent zamiast Hyundaia umieścił bym np.
.
Nasz Band.
Mamy about ale nagłówek jest ten sam bo
pod komponent wykorzystywany wielokrotnie na różnych kontynentach stron.
Jeśli spojrzymy z powrotem w terminal to zobaczymy się ładnie akurat wygenerował
HTML tez CSS i zarejestrował to przez KOD do App.
Mogą się tworzyć główny moduł to komponenty które wygenerowane są ładnie za
importowane i są dodane do deklaracji moduł.
To jest ważne że go robić zgłosić których komponentów używamy czyli np.
mamy tam aut komponenty.
Chciałbym tutaj użyć i zapomnę go zarejestrować w deklaracjach.
Zobaczmy tutaj. Projekt przebudowa.
O to jak się pojawi błąd.
AP about mam a nie jest znanym elementem
upewnij się czy a na pewno jest oponentem czy na pewno czy gwałt komponent czy
lektor zgadza się z nazwą w HTML u i upewnij się czy jest on częścią modułu
czyli trzeba się upewnić że ten komponent którego chcemy użyć na pewno znajduje się
w naszym głównym module albo został za importowany z któregoś z modułów.
Czy możemy także użyć innych modułów
które mają komponenty ale musi być gdzieś w deklaracjach użyte inaczej nie
możemy ogłosić na stronie i tu spróbujmy odświeżyć stronę ta jest pusta.
Nam wszystko zniknęło.
Spróbuję jeszcze do tego dodać z powrotem.
Jeśli go zarejestruje my to mamy komplet sex w jest zielono.
Wszystko działa OK i teraz ten nasz komponent który używamy w środku czyli
nasz powiedzmy na komponent nie wspominam że się go zmienię.
To się zmieni we wszystkich miejscach we
wszystkich innych komponentów stronach czyli powiedzmy sobie portfolio.
Zmienię sobie też style na jakieś
ciemniejsze powiedzmy w ten sposób podam tu jakieś przykładowe klasy.
Nie jest to w tym momencie bardzo istotne
tylko pokaże czy będzie to teraz to ładnie powinno powinnam to działać.
Mam też te wszystkie data to data target możemy użyć po prostu biblioteki móc
dołączyć do QWERTY ale ponieważ mam temu Lara czyli mogę dodać też ręcznie np.
obsługę klik.
Ustalił że kliknięcie na przykład zmienia Open równa się nie Open.
Trumna z FOZZ.
I jeśli powiedzmy jest chłopem
to tej ustawie że powiedzmy klasa klasa szkół to jest popyt.
No i zmienną Open tworzy w tym pod komponent.
Czy nie muszę innych komponentów coś mieszać sobie tymi zmiennymi.
Mogę całą logikę zabijania rozwijania rozwijania menu.
Mogą jeździć tylko w komponent Bara mniej a inne komponenty.
Wystarczy że użyją tylko na przykład Abbott rzadko użyją tego menu i w ten
sposób nie muszą się martwić już o nawigację.
Zobaczmy i mamy pasek nawigacyjny
i mamy zabijanie rozwijanie i znowu użyje innego komponentu.
Tu już nie muszę się martwić o pasek nawigacji bo razem został zmieniony dodany
mógłby teraz wielokrotnie na różnych stronach wykorzystać.
Tak samo wyglądał tak samo działał bardzo fajna rzecz.
Tak więc pamiętaj że zamiast kopiować całe bloki HTML a jeśli chcesz użyć coś
ponownie stworzyć sobie komponent koszyku ponownie i też pamiętaj o tym żeby taką
strukturę aplikacji sobie od razu jakoś uporządkować czyli podzielić te komponenty
na jakieś role na jakieś grupy które chcesz żeby one pełniły jakieś funkcje.
Często ja robię komponenty czyli bloki których używamy takie by zwykłe komponenty
i to w specjalnych fotelach tworzę komponenty które są specjalne role.
Tak np.
prezentują ekran czy reprezentują jakieś właśnie okna czy jakieś panele czy
powiedzmy komponenty które prezentują jakiś stan.
Widzimy trudność w kolejnych lekcjach tego kursu.
Pamiętaj dokładnie nieważne czy przy karty
komponentów musi być zarejestrowany w odpowiednim Module.
Jeśli mogę nie zawiera komponentu to
gładko pokaże błąd że nie jest to rozpoznany komponent.