Le rendu conditionnel dans React fait référence à la technique de rendu de différents éléments de l'interface utilisateur en fonction de certaines conditions ou états. React propose plusieurs façons de restituer conditionnellement des composants ou des éléments en fonction de l'état ou des accessoires de l'application.
Le rendu conditionnel est le concept dans lequel différents composants ou éléments sont rendus en fonction de conditions spécifiques. Dans React, cela est généralement réalisé en utilisant des opérateurs JavaScript comme if, ternaire ou && dans JSX pour décider ce qui doit être affiché.
L'approche traditionnelle consistant à utiliser des instructions if ou else peut être utilisée avant de renvoyer JSX. Ceci est particulièrement utile lorsque plusieurs conditions doivent être vérifiées.
import React, { useState } from "react"; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); if (isLoggedIn) { return <h1>Welcome back!</h1>; } else { return <button onClick={() => setIsLoggedIn(true)}>Login</button>; } };
L'opérateur ternaire est un moyen abrégé d'effectuer un rendu conditionnel. C'est utile lorsque vous souhaitez afficher un élément si une condition est vraie et un autre élément si elle est fausse.
import React, { useState } from "react"; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); return ( <> {isLoggedIn ? ( <h1>Welcome back!</h1> ) : ( <button onClick={() => setIsLoggedIn(true)}>Login</button> )} </> ); };
L'opérateur && est un opérateur de court-circuit qui restitue un élément si la condition est vraie. Cette approche est utile lorsque vous avez uniquement besoin de restituer quelque chose de manière conditionnelle sans branche else.
import React, { useState } from "react"; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); return ( <> {isLoggedIn && <h1>Welcome back!</h1>} {!isLoggedIn && <button onClick={() => setIsLoggedIn(true)}>Login</button>} </> ); };
Vous pouvez également utiliser des fonctions pour gérer plus clairement le rendu conditionnel, en particulier lorsqu'il y a plusieurs conditions à vérifier.
import React, { useState } from "react"; const MyComponent = () => { const [status, setStatus] = useState("loading"); const renderContent = () => { if (status === "loading") { return <p>Loading...</p>; } else if (status === "error") { return <p>Error occurred!</p>; } else { return <p>Data loaded successfully!</p>; } }; return ( <div> {renderContent()} <button onClick={() => setStatus("error")}>Simulate Error</button> <button onClick={() => setStatus("success")}>Simulate Success</button> </div> ); };
Parfois, vous souhaiterez peut-être restituer des composants entiers en fonction d'une certaine condition.
import React, { useState } from "react"; const Welcome = () => <h1>Welcome back!</h1>; const Login = () => <button>Login</button>; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); return isLoggedIn ? <Welcome /> : <Login />; };
Si vous effectuez le rendu d'une liste d'éléments, le rendu conditionnel peut être utilisé pour restituer sélectivement certains éléments de la liste.
import React, { useState } from "react"; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); if (isLoggedIn) { return <h1>Welcome back!</h1>; } else { return <button onClick={() => setIsLoggedIn(true)}>Login</button>; } };
Dans de nombreux cas, vous rendrez les éléments de manière conditionnelle en fonction des résultats des appels d'API ou de la récupération de données asynchrone. Cela peut être fait en utilisant l'état et les effets secondaires avec useEffect.
import React, { useState } from "react"; const MyComponent = () => { const [isLoggedIn, setIsLoggedIn] = useState(false); return ( <> {isLoggedIn ? ( <h1>Welcome back!</h1> ) : ( <button onClick={() => setIsLoggedIn(true)}>Login</button> )} </> ); };
Le rendu conditionnel est un concept fondamental dans React qui vous permet d'afficher différents éléments de l'interface utilisateur en fonction de l'état ou des accessoires. En utilisant des techniques telles que if, des opérateurs ternaires, des opérateurs && ou même des fonctions, vous pouvez ajuster dynamiquement le rendu de vos composants. Un rendu conditionnel approprié contribue à améliorer l'expérience utilisateur en affichant un contenu approprié en fonction de l'état de l'application ou de l'interaction de l'utilisateur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!