Middle
Aký je rozdiel medzi kontrolovaným a nekontrolovaným vstupom a kedy čo použiť?
sobes.tech AI
Odpoveď od AI
Riadený vstup — je prvok formulára, ktorého hodnota je úplne riadená stavom komponentu (napríklad v React). Hodnota poľa je uložená v stave a aktualizuje sa prostredníctvom obsluhy udalostí.
Neriadený vstup — je prvok formulára, ktorý je spravovaný samotným DOM-om, nie stavom komponentu. Hodnota sa číta cez referencie, keď je to potrebné.
Kedy použiť:
- Riadený vstup je vhodný, keď je potrebné okamžite reagovať na zmeny, overiť údaje, synchronizovať so stavom aplikácie.
- Neriadený vstup je jednoduchší a rýchlejší pre jednoduché formuláre, kde nie je potrebný neustály dohľad nad vkladaním.
Príklad riadeného vstupu v React:
function MyInput() {
const [value, setValue] = React.useState('');
return <input value={value} onChange={e => setValue(e.target.value)} />;
}
Príklad neriadeného vstupu:
function MyInput() {
const inputRef = React.useRef(null);
const handleSubmit = () => {
alert(inputRef.current.value);
};
return <>
<input ref={inputRef} />
<button onClick={handleSubmit}>Odoslať</button>
</>;
}