w Praktyce
6 godz. 51 min · ReactJS · Full-stack i Programowanie
Adam RomanskiFrontend developer & YouTube CreatorNarzędzia typu ESlint, Prettier, Husky czy lint-staged niezmiernie pomagają nam w pracy. Problem jednak polega na tym, że ich konfiguracja bywa kłopotliwa. W tym kursie dowiesz się, jak poprawnie skonfigurować te narzędzia, tak, aby nie wchodziły ze sobą w konflikty i pomagały nam pisać lepszy kod.
Brzmi jak zły pomysł? Wcale nie! CSS in JS to rewolucyjne podejście, które pozwala nam tworzyć style bezpośrednio w komponentach. Dzięki bibliotece Styled Components możesz wpływać na ich stan, wygląd i wiele innych rzeczy. To niezwykłe narzędzie, wprowadzające powiew świeżości dla ludzi zmęczonych czystym CSS.
Dokumentowanie wyglądu i zachowania naszych komponentów bywa kłopotliwe. Jeśli jednak użyjemy odpowiednich narzędzi, staje się banalne! Storybook w połączeniu z podejściem atomic design pozwoli nam na stworzenie świetnie udokumentowanych komponentów.
React w Praktyce nie byłby... praktyczny, gdyby nie pokazanie tego, w jaki sposób rozwiązuje się problemy z layoutem aplikacji. Sidebary, szablony, powtarzalne komponenty – to wszystko poznasz w tym kursie.
Tworzenie store, czyli warstwy z danymi w naszej aplikacji dla wielu bywa wyzwaniem dość trudnym. Wynika to często z tego, że przykłady Reduxa bywają niepraktyczne. W tym kursie dowiesz się, w jaki sposób działa Redux – zaczniemy od podstaw, a skończymy na rozbudowanej strukturze danych. Dzięki temu zobaczysz, że nie taki Redux straszny jak go malują.
Aplikacja frontendowa bez backendu może istnieć, choć jej możliwości będą zdecydowanie ograniczone. A już na pewno będzie ona miała kiepską pamięć. Dlatego w tym kursie stworzymy lokalną wersję backendu połączoną z MongoDB na mLab. W ten sposób będziemy mogli dłużej przechowywać dane zapisane w naszych komponentach.
O testach można mówić wiele. To niezwykle rozległy temat, dlatego zanim zaczniesz je pisać na poważnie, chcę Ci pokazać jak możesz poćwiczyć podstawowe rzeczy. Poznasz narzędzie JEST, które odpowiada za uruchamianie testów, oraz wprowadzę Cię do react-testing-library, jednej z najpopularniejszych bibliotek do testowania aplikacji reactowych.
Ten kurs przeznaczony jest dla osób, które lada dzień będą aplikować na stanowiska juniorskie jako React developer. Zawarłem w nim wiele aspektów pracy z React, które zdarzają się w prawdziwej pracy. Ponadto skorzystać mogą z niego osoby, które znają inny framework JS i chcą nauczyć się Reacta, jednak kursy od podstaw są dla nich zbyt proste.
16.8.x
Cześć, w tej lekcji zainstalujemy sobie style component's w naszym projekcie i sprawdzimy,
czy to wszystko będzie działać, z racji, że używamy create react app, to nie mamy aż takich
możliwości konfiguracji wszystkich paczek, które instalujemy. Nie mamy dostępu do
webpack'a, ani innych takich rzeczy, moglibyśmy eject'ować nasz create-react-app,
o czym w tym kursie nie opowiem, ponieważ jest to rzecz, którą robi się niezwykle
rzadko i zazwyczaj większość konfiguracji można zrobić jednak z nie eject'owanym
create-react-app, o eject'cie możesz poczytać oczywiście nieco więcej w dokumentacji
create-react-app do czego cię zachęcam, zawsze warto wiedzieć więcej. Natomiast
teraz po prostu zainstalujemy sobie nasze styled-components. Skopiujemy, więc sobie
ten fragment, który mamy tutaj w tym miejscu, wkleimy
go do naszego terminala i po zainstalowaniu naszego
style-component możemy użyć go w naszym widoku, na
przykład w app js, spróbujmy czy on w ogóle zadziała, pierwsze co musimy zrobić to zaimportować ze
style components i
teraz spróbujmy sobie stworzyć jakieś pierwszy bardzo
prosty ten components. Nazwijmy go na przykład button, mybutton. Okej
już widzimy jeden problem, nasz Visual Studio Code nie podświetla nam
składni stale components, więc musimy teraz wejść sobie do naszego
extensions, do naszych zakładek i znaleźć paczkę, która się nazywa VS
Code style componentes. Gdzieś tu powinna być. Jest
tutaj, instalujemy te paczkę i teraz jak wrócimy
do naszego komponentu, to nasze style już są normalnie podświetlane. Tutaj
ESlint nam się czepia, że jest to nie w prawidłowym
miejscu. Najpierw powinny być o importy absolutne,
a dopiero później importy relatywne, czyli takie gdzie podajemy dokładną ściężkę, teraz
spróbujmy wykorzystać ten button w naszym komponencie, na
przykład w tym miejscu. Jedyne, co musimy zrobić to
wykorzystać, wykorzystać go tak jak zwykły komponent, spróbujmy teraz
odpalić nasz projekt, jeśli wszystko poszło dobrze to nasz baton powinien się pojawić w
naszym widoku i tak też właśnie się stało, nasz
baton jest i działa. Nic nie robi, co
prawda, ale działa zauważyłem jednak jedną niepokojącą rzecz, a mianowicie, że
kiedy pisze kod to nie jest podpowiadane mi syntax
CSS'a powinno tak być, więc wróćmy jeszcze na chwilę do naszych
extensions i jak się przyjrzymy to widzimy, że mamy tutaj 2 takie
same plugin'y, a przynajmniej tak samo się nazywają, więc można wpaść w
niezłą pułapkę tutaj autorem jest make flow, natomiast oficjalny plugin do style components
stworzył Julien Poissonnier, prawdopodobnie
to czyta jest jakaś po francusku, ale nie mam pojęcia jak to zrobić, nie mniej widać po
liczbie pobrań, że ten drugi jest dużo bardziej popularnym, a właściwie
ten pierwszy, czyli ten. Także odinstalujmy teraz ten który zainstalowaliśmy
przed chwilą, trochę
celowo ci to pokazuje, żeby pokazać że ten marketplace na jest
VSCode'ie potrafi być zwodniczy i czasami potrafi wpuścić nas w maliny i trzeba
po prostu uważać, co się instaluje, czasami warto zajrzeć sobie do
repozytorium, na przykład takiej paczki i zobaczyć kto jest autorem. Z czym jest
powiązany i tak dalej, teraz jak wrócimy sobie do naszych style components i wpiszę
margin, to mamy teraz elegancko wszystkie wartości
CSS'a więc od teraz pisanie stylów w naszym js'ie
będzie banalne, do zobaczenia w następnej lekcji.