Zbuduj formularz shadcn/ui z React Hook Form i Zod, zapisz go za pomocą server action i pokaż wyniki w tabeli danych shadcn z sortowaniem, wyszukiwaniem i stronicowaniem. Dema na żywo i kod do skopiowania.
Formularz shadcn/ui łączy komponenty Field z Controllerem z React Hook Form i schematem Zod przekazanym przez zodResolver. Tabela danych shadcn łączy komponenty Table z TanStack Table, który zapewnia sortowanie, wyszukiwanie i strony. Poniżej formularz rezerwacji na żywo dodaje wiersze do tabeli rezerwacji, z kodem dla obu.
Pakiety
Wyślij formularz z błędem, by zobaczyć komunikaty, a potem zarezerwuj stolik i zobacz, jak pojawia się na liście poniżej. Podgląd korzysta z kopii elementów shadcn używanych na naszej stronie i prostego stanu dla tabeli; kod to pełna wersja z shadcn, React Hook Form, Zod i TanStack.
Aktualny przewodnik po formularzach shadcn/ui buduje formularze z Field, FieldLabel i FieldError razem z Controllerem z React Hook Form. Starsze projekty używają opakowań Form i FormField; oba podejścia opierają się na React Hook Form, więc istniejące formularze nadal działają.
Nie. Komponenty Table w shadcn to po prostu ostylowane elementy tabeli. Dodaj TanStack Table, gdy potrzebujesz sortowania, filtrowania, stronicowania lub zaznaczania.
Niech server action zwraca błędy z kluczami w postaci nazw pól, a potem wywołaj form.setError(field, { message }) dla każdego z nich. FieldError pokaże je jak każdy inny komunikat walidacji.
Tak. W Next.js wywołaj revalidatePath w server action, by strona renderująca tabelę pobrała świeże wiersze. W aplikacji działającej tylko po stronie klienta dodaj nowy wiersz do stanu danych lub pobierz je ponownie.
Kto za co odpowiada
Strona formularza wymaga React Hook Form, Zod i resolvera; strona tabeli wymaga TanStack Table. CLI shadcn kopiuje elementy UI.
Controller podłącza każde pole. data-invalid na Field stylizuje cały wiersz, aria-invalid na polu informuje czytniki ekranu, a FieldError wyświetla komunikat Zod.
Uruchom ten sam schemat ponownie na serwerze. Zwróć błędy pól i przywróć je w formularzu za pomocą setError.
Komponenty Table w shadcn to ostylowane elementy tabeli; TanStack zapewnia sortowanie, filtrowanie i strony. Obiekt features i kolumny znajdują się poza komponentem, dzięki czemu pozostają stabilne.
Najpierw chcesz zobaczyć więcej gotowych bloków? Zobacz
Podaj swoje imię
Wpisz poprawny adres email
Co najmniej 1
W przypadku grup powyżej 12 osób zadzwoń do nas
Maksymalnie 300 znaków
Goście
Uwagi
Rezerwuję...
Zarezerwuj stolik
Godzina
Szukaj rezerwacji
Brak wyników.
Strona {p} z {n}
Poprzednia
Następna
Zacznij za darmo · Bez karty kredytowej