Projekt aplikacji SaaS
8 godz. 8 min · Next.js · Full-stack i Programowanie
Daniel NoworytaFull stack DeveloperNaucz się tworzyć bezpieczne systemy uwierzytelniania i autoryzacji, korzystając z Clerk. Pokażę Ci, jak to robić krok po kroku, aby Twoje aplikacje były bezpieczne i profesjonalne.
Zrozumiesz, jak skutecznie i bezboleśnie połączyć swoją aplikację Next.js z bazą danych PostgreSQL na DigitalOcean. Pokażę Ci, jak używać Prismy, aby ułatwić ten proces.
Dowiesz się, jak zarządzać routingiem i nawigacją w swojej aplikacji, aby użytkownicy mogli łatwo i intuicyjnie poruszać się po Twojej stronie.
Pokażę Ci, jak z łatwością wdrożyć swoją aplikację na Vercel, jednym z najpopularniejszych środowisk hostingowych dla aplikacji Next.js.
Nauczysz się zarządzać stanem aplikacji i jak wykorzystać server actions w praktyce, co pozwoli Ci na tworzenie bardziej zaawansowanych i dynamicznych funkcji.
Ten kurs jest dla osób, które już mają pewne doświadczenie z JavaScript i chcą zgłębić swoje zrozumienie Next.js. Zakładamy, że znasz podstawy TypeScript, TailwindCSS, ale nie potrzebujesz doświadczenia z Next.js - wszystko wyjaśnię Ci od podstaw!
Teraz, kiedy już mamy dane w naszym komponencie, możemy zająć się nową częścią
naszego developmentu i możemy zacząć zajmować się naszym contentem.
W jaki sposób to wszystko tutaj będziemy trzeba rozłożyć?
Jeżeli spojrzymy na firmę i na design, to generalnie rzecz biorąc, jeżeli
zobaczysz sobie tutaj tą część, to tak naprawdę można coś tutaj zobaczyć.
Trzy kolumny można by zobaczyć.
Tak naprawdę to jest jedna kolumna, tutaj będzie druga i trzecia.
Czyli można ten obrazek podzielić na trzy części.
Z tego względu, że tutaj ta ostatnia
część, którą teraz przesuwam, ma mniej więcej jedną trzecią szerokości,
tak, te tutaj zajmują dwie trzecie szerokości.
Jeżeli chodzi o rzędy, to widzimy tutaj
wyraźnie, że są dwa rzędy, jest jeden rząd taki, potem mamy drugi rząd.
W taki sposób, Czyli możemy sobie
spróbować właśnie w taki sposób ograć to jakimś GRID em tutaj.
Wróćmy do naszego komponentu, do naszej przeglądarki.
Ja sobie tutaj obraz przeglądarki tutaj powiększa.
Jeżeli chodzi tutaj o
nasz edytor kodu, to myślę, że też sobie to powiększymy, zamkniemy.
I teraz zrobimy sobie main, który będzie głównym elementem na naszej stronie.
W środku będziemy potrzebowali trzech rzeczy.
Na pewno będziemy potrzebowali jeden div.
Gdzie będą nasze statystyki, prawda?
Czyli tutaj możemy sobie zrobić od razu statystyki.
Drugim komponentem, który będziemy
potrzebować tutaj, to na pewno będzie komponent z naszą tabelką z danymi.
Czyli możemy sobie swobodnie napisać data table.
I trzeci komponent, który będzie nam
potrzebny na to będzie ten komponent już ze statystykami poszczególnych płatności,
poszczególnych grup płatności, które mieliśmy w firmie, czyli grup.
Mamy trzy główne komponenty, które będziemy musieli sobie tutaj zapakować.
Najpierw zajmiemy się ogólnym layoutem.
W jaki sposób powinniśmy to rozłożyć, czyli class name tego głównego elementu.
Teraz rozpoczniemy o sobie od tego, że MX chcemy ustawić na auto z tego względu,
że jeżeli rozszerzymy sobie tą stronę na bardzo szeroki ekran, to
nie chcielibyśmy, żeby wszystko nam się tak bardzo rozszerzały.
Chciałbym to ciągle
pozostawić czytelne dla naszego końcowego użytkownika, żeby tak jak widzisz tutaj to
też nie zajmuje całej szerokości naszego ekranu.
Chcę, żeby po prostu te
rzeczy tak naprawdę nie zajmowały zawsze wielkiego pola widzenia.
Dlatego ograniczymy sobie nasz wewnętrzny wrapper i ustawimy margin na X na auto.
Czyli wróćmy teraz do naszego komponentu i tak zaczniemy MX Auto.
Jeżeli chodzi o display to chcemy tutaj posłużyć się GRID.
Jeżeli chodzi o wysokość to chcemy to
ustawić na full, żeby to była cała wysokość naszej strony.
Jeżeli chodzi o maksymalną szerokość to
możemy sobie ustawić na 7 XL to będzie 1280 pikseli.
Jest to myślę ok.
Szerokość dla osoby, która chciałaby
przeczytać objąć wzrokiem całe dostępne dane.
Jeżeli chodzi o grid cells to chcemy sobie
ustawić na 3 równe kolumny jak już mówiliśmy.
A jeżeli chodzi o grid rows
no to tutaj będziemy musieli troszeczkę sobie popracować.
I tutaj sobie ustawimy wartość customowe
skorzystamy z takich nawiasów i w tym momencie chcę, żeby pierwszy rządek miał
80 pikseli wysokości, a drugi rządek ustawimy sobie na na resztę po prostu 1.
Jest to związane z tym, że zobaczymy sobie w naszym dizajnie firmie
No to tutaj to co mamy tutaj, no to jest około 80 pikseli.
No, mamy
jeszcze złapałem, mam dziewięćdziesiąt osiem, ale to jest wysokość około 80
pikseli, czyli tą część chciałbym ustawić na 80 pikseli, natomiast całą resztę na
całą resztę, która pozostaje nam z pełnej wysokości naszego komponentu.
Dodatkowo jeżeli chodzi o GAP pomiędzy tymi wszystkimi elementami ustawimy to
sobie na 6 i padding na Y też ustawimy na 3.
Zapiszemy sobie teraz to już w tym momencie.
Jeżeli coś dodamy do tych dwóch, no to
powinniśmy mieć tak naprawdę naszą strukturę, czyli zajmijmy się teraz
rozmieszczeniem naszych dwóch, jeżeli chodzi o nasz
komponent tutaj ze statystykami zaczniemy od tego class name.
No i tutaj potrzebujemy call span na 3, to jest na najmniejszych ekranach.
Jeżeli chodzi o row start to ustawimy sobie na jedynkę.
Jeżeli chodzi o to ustawimy na dwójkę.
Chcemy żeby to zajmowało tylko i wyłącznie tak naprawdę jeden rządek.
Round XL zaokrągla ten element.
Jeżeli chodzi o to, zrobimy sobie pięćdziesiątkę, żeby już to zobaczyć.
I jeżeli chodzi o ekrany duże, to
chciałbym, żeby to zajmowało dwie kolumny, Tak?
Czyli jak sobie też od razu już zaczynamy
troszeczkę zajmować się responsywności, ścią tego widoku.
Dlatego teraz zapiszę to sobie.
Przejdźmy teraz.
Kolejnego elementu, który będzie tym elementem tutaj.
Przyjrzyjmy się stylem, które musimy
zastosować właśnie w tym elemencie z danymi, z tabelką z danymi.
Przejdźmy tutaj do klas Name. Co nam tutaj będzie?
Na pewno col span.
Domyślnie chcemy na 3 rozstać.
Chcemy mieć na.
Zacząć od rzędu numer 2 rund.
Chcemy skończyć to na rzędzie numer 3.
Tak naprawdę chcemy ustawić sobie tutaj to wszystko na flex w środku.
Może na razie ustawianiem się w środku nie zajmiemy.
Dopiero jak będziemy mieli tabelkę z danymi.
Na pewno musimy tutaj Randy XL zastosować to samo co mieliśmy tutaj.
Jeżeli chodzi o BG to też zastosujemy BG
50 i jeżeli chodzi o padding to niech też będzie 6.
Tutaj w środku i na XL chcemy to zrobić na call span
i chcemy żeby to zajmowało już nasze dwie kolumny.
Tak, zapiszemy sobie To teraz wszystko.
Wróćmy teraz do kolejnego elementu tutaj i
zróbmy rozdzielenie tego ostatniego diva, czyli tych statystyk.
Jeżeli chodzi o naszą kategorie breakdown statystyk, czyli zaczniemy od klas Name.
I w tym momencie tak potrzebujemy.
Na pewno row span ustawi sobie na 2
jeżeli chodzi o małe ekrany domyślnie, żeby to było ukryte.
Tak naprawdę jeżeli chodzi o zaokrąglenie
to Ranger XL podobnie jak poprzednie elementy.
Jeżeli chodzi o background to też to będzie string 50.
I jeżeli chodzi o XL to niech to będzie ustawiony display na Flex.
Zapiszemy to sobie teraz.
Zobaczmy czy mamy tu już jakieś zmiany na naszym ekranie.
No i po odświeżeniu naszej strony i po naprawieniu tutaj literówki, którą
mieliśmy w słowie grid, wszystko zaczyna wyglądać tak jak powinno.
Zobacz, już mamy poszczególne elementy tutaj wyszczególnione.
Teraz możemy zająć się tak naprawdę
pakowaniem tego wszystkiego w środek i kolejnej lekcji.
Zajmiemy się tutaj tym komponentem ze statystykami.