React Conditional Rendering
En React, puedes renderizar componentes condicionalmente.
Hay varias formas de hacer esto.
if Declaración
Podemos usar el ifoperador de JavaScript para decidir qué componente renderizar.
Usaremos estos dos componentes:
function MissedGoal() {
return <h1>MISSED!</h1>;
}
function MadeGoal() {
return <h1>Goal!</h1>;
}
Ahora, crearemos otro componente que elija qué componente renderizar según una condición:
function Goal(props) {
const isGoal = props.isGoal;
if (isGoal) {
return <MadeGoal/>;
}
return <MissedGoal/>;
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<Goal isGoal={false} />);
Intente cambiar el isGoalatributo a true:
import React from 'react';
import ReactDOM from 'react-dom/client';
function MissedGoal() {
return <h1>MISSED!</h1>;
}
function MadeGoal() {
return <h1>GOAL!</h1>;
}
function Goal(props) {
const isGoal = props.isGoal;
if (isGoal) {
return <MadeGoal/>;
}
return <MissedGoal/>;
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<Goal isGoal={true} />);
&&Operador lógico
Otra forma de renderizar condicionalmente un componente de React es mediante el uso del &&operador.Operador ternario
Otra forma de representar elementos condicionalmente es mediante el uso de un operador ternario.
condition ? true : false
Volveremos al ejemplo de la meta.
Devuelve el MadeGoalcomponente si isGoallo es true; de lo contrario, devuelve el MissedGoalcomponente:
import React from 'react';
import ReactDOM from 'react-dom/client';
function MissedGoal() {
return <h1>MISSED!</h1>;
}
function MadeGoal() {
return <h1>GOAL!</h1>;
}
function Goal(props) {
const isGoal = props.isGoal;
return (
<>
{ isGoal ? <MadeGoal/> : <MissedGoal/> }
</>
);
}
Comentarios
Publicar un comentario