Renderowanie warunkowe operatorem trójargumentowym
Część sekcji Podstawy ścieżki React w Coddy. Lekcja 33 z 42.
Nawiasy klamrowe JSX nie mogą zawierać instrukcji if, ale świetnie sprawdza się w nich operator warunkowy (ternary) i obejmuje niemal każdy przypadek wyboru jednej z dwóch opcji na ekranie:
{isLoggedIn ? 'Welcome back!' : 'Please log in'}Najpierw warunek, potem wartość dla true, a następnie wartość dla false. Obie strony mogą być pełnymi elementami JSX:
{isLoggedIn
? <p>Welcome back!</p>
: <button>Log in</button>}Połącz to ze stanem, a strona będzie przełączać się na żywo: zmień wartość logiczną, a React ponownie wyrenderuje drugą gałąź.
Wyzwanie
ŁatwyZbuduj wiersz statusu logowania.
- Dodaj stan logiczny
loggedIn, początkowo ustawiony nafalse. - Przycisk (
id="login") zmienia jego wartość przy każdym kliknięciu. - Akapit (
id="status") wyświetlaWelcome back!, gdy użytkownik jest zalogowany, a w przeciwnym raziePlease log in, używając operatora warunkowego.
Spróbuj swoich sił
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<div id="root"></div>
<script type="module" src="main.jsx"></script>
</body>
</html>Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
1Poznaj React
Czym jest React?Twój pierwszy komponentZasada jednego rodzicaJSX to nie HTMLPodsumowanie: poznaj React4Props
Czym są propsy?Przekazywanie propsówDwa propsyTen sam komponent, nowe daneProp childrenPodsumowanie: propsy7Warunki i listy
Renderowanie warunkowe operatorem trójargumentowymWyświetlanie za pomocą &&Renderowanie listyKlucze mają znaczenieFiltruj, a następnie mapujPodsumowanie: warunki i listy