# Formularze i Controlled Components (React / Next.js) > Controlled components, uncontrolled components, walidacja formularzy, React Hook Form, obsługa submit - 20 pytań z rozmów - Mid-Level - [Pytania z rozmów: React / Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne.md) ## 1. Czym jest controlled component w React? **Odpowiedź** Controlled component to element formularza, którego wartość jest zarządzana przez state React poprzez prop value i handler onChange. Oznacza to, że React staje się jedynym źródłem prawdy dla tych danych. W przeciwieństwie do uncontrolled components, gdzie DOM przechowuje własną wartość, controlled components zapewniają pełną kontrolę nad danymi formularza i ułatwiają walidację w czasie rzeczywistym. ## 2. Jak stworzyć controlled input w React? **Odpowiedź** Controlled input wymaga dwóch niezbędnych elementów: prop value powiązanej ze state React oraz handlera onChange do aktualizacji tego state. Bez onChange input byłby tylko do odczytu, ponieważ React uniemożliwiłby jakąkolwiek modyfikację. To podejście zapewnia, że state React pozostaje zsynchronizowany z wyświetlaną wartością input, umożliwiając natychmiastową walidację lub transformację danych. ## 3. Jaka jest różnica między controlled component a uncontrolled component? **Odpowiedź** Fundamentalna różnica polega na źródle prawdy dla danych. Controlled component przechowuje swoją wartość w state React (jedyne źródło prawdy), podczas gdy uncontrolled component pozwala DOM zarządzać własną wartością, dostępną przez ref. Controlled components oferują większą kontrolę i ułatwiają walidację w czasie rzeczywistym, ale uncontrolled components mogą być prostsze dla podstawowych formularzy bez złożonej walidacji. ## Jeszcze 17 dostępnych pytań - Jak zarządzać wieloma controlled input w tym samym formularzu? - Jak stworzyć controlled checkbox w React? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne React / Next.js - [Podstawy JavaScript](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/javascript-essentials.md): 25 pytań, Junior - [Podstawy React](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-fundamentals.md): 20 pytań, Junior - [React Hooks](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-hooks.md): 22 pytań, Junior - [Cykl życia komponentu](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/component-lifecycle.md): 18 pytań, Junior - [React Router](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-router.md): 20 pytań, Junior - [Zarządzanie stanem z Context](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/state-management-context.md): 18 pytań, Junior - [Pobieranie danych i API](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/fetching-data-api.md): 20 pytań, Mid-Level - [React Query (TanStack Query)](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-query-tanstack.md): 20 pytań, Mid-Level - [Styling & CSS-in-JS](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/styling-css-in-js.md): 18 pytań, Mid-Level - [Podstawy Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-fundamentals.md): 25 pytań, Mid-Level - [TypeScript z React](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/typescript-react.md): 20 pytań, Mid-Level - [Pobieranie danych w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-data-fetching.md): 24 pytań, Mid-Level - [Server Actions w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-server-actions.md): 20 pytań, Mid-Level - [Routing i Nawigacja w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-routing-navigation.md): 22 pytań, Mid-Level - [API Routes w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-api-routes.md): 20 pytań, Mid-Level - [Metadata & SEO w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-metadata-seo.md): 18 pytań, Mid-Level - [Middleware i Auth w Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-middleware-auth.md): 22 pytań, Mid-Level - [Testowanie React](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-testing.md): 20 pytań, Mid-Level - [Zustand State Management](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/zustand-state-management.md): 18 pytań, Mid-Level - [Optymalizacja wydajności React](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-performance-optimization.md): 22 pytań, Senior - [Error Boundaries & Error Handling](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-error-boundaries.md): 18 pytań, Senior - [Advanced React Patterns](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/advanced-react-patterns.md): 20 pytań, Senior - [Zaawansowane funkcje Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-advanced-features.md): 24 pytań, Senior - [Wdrożenie i Produkcja Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-deployment-production.md): 20 pytań, Senior - [Architecture & Design Patterns](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-architecture-patterns.md): 22 pytań, Senior - [React Server Components](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-server-components.md): 26 pytań, Senior - [Internacjonalizacja Next.js](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/nextjs-internationalization.md): 20 pytań, Senior - [React Bezpieczeństwo & Najlepsze Praktyki](https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/react-security-best-practices.md): 22 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/react-next/pytania-rekrutacyjne/forms-controlled-components