Zaškrtávací políčka a podmíněné renderování v Reactu
Udělejme tak, aby v závislosti na zaškrtnutí zaškrtávacího políčka byl na obrazovku vykreslen buď jeden kousek kódu, nebo druhý. Použijeme k tomu podmíněné renderování:
function App() {
const [checked, setChecked] = useState(true);
let message;
if (checked) {
message = <p>zpráva 1</p>;
} else {
message = <p>zpráva 2</p>;
}
return <div>
<input type="checkbox" checked={checked} onChange={() => setChecked(!checked)} />
<div>{message}</div>
</div>;
}
Je dáno zaškrtávací políčko. Pomocí zaškrtávacího políčka se zeptejte
uživatele, zda je mu již 18
let. Pokud je zaškrtávací políčko zaškrtnuto, zobrazte uživateli
následující blok kódu:
<div>
<h2>Hurá, je vám již 18</h2>
<p>
zde je umístěn obsah pouze pro dospělé
</p>
</div>
A pokud zaškrtávací políčko není zaškrtnuto - pak následující:
<div>
<p>
bohužel, je vám ještě méně než 18 let:(
</p>
</div>
Je dáno zaškrtávací políčko a odstavec. Pokud je zaškrtávací políčko zaškrtnuto, nechť je odstavec viditelný na obrazovce, a pokud není zaškrtnuto - skryjte jej.