Formulare
Controlled Forms
const Form = ({ onAddItem }) => {
const [description, setDescription] = useState('');
const [quantity, setQuantity] = useState(1);
const handleSubmit = (e) => {
e.preventDefault();
if (!description.trim()) return;
onAddItem({ description, quantity, packed: false, id: Date.now() });
setDescription('');
setQuantity(1);
};
return (
<form className="add-form" onSubmit={handleSubmit}>
<h3>What do you need for your 😍 trip?</h3>
<select
value={quantity}
onChange={(e) => setQuantity(Number(e.target.value))}
>
{Array.from({ length: 20 }, (_, i) => i + 1).map((num) => (
<option value={num} key={num}>
{num}
</option>
))}
</select>
<input
type="text"
placeholder="Item..."
value={description}
onChange={(e) => setDescription(e.target.value)}
/>
<button type="submit">Add</button>
</form>
);
};
export default Form;Objekte
Validierung
Uncontrolled Forms
useForm-Hook
Last updated