馃攢 Condicionales en componentes React para renderizado din谩mico
En React, podemos mostrar u ocultar elementos de manera din谩mica usando condicionales. Esto permite que la interfaz cambie seg煤n el estado o los datos recibidos.
1️⃣ Condicional simple con operador ternario
Ejemplo b谩sico que muestra un mensaje seg煤n un estado booleano:
function App() {
const [isLoggedIn, setIsLoggedIn] = React.useState(false);
return (
<div>
{isLoggedIn ? <h2>Bienvenido de nuevo!</h2> : <h2>Por favor, inicia sesi贸n</h2>}
<button onClick={() => setIsLoggedIn(!isLoggedIn)}>Toggle Login</button>
</div>
);
}
ReactDOM.createRoot(document.getElementById('root')).render(<App />);
Por favor, inicia sesi贸n
2️⃣ Renderizado condicional con &&
Si solo queremos renderizar un elemento cuando la condici贸n sea verdadera:
function App() {
const [showMessage, setShowMessage] = React.useState(true);
return (
<div>
{showMessage && <p>Este mensaje solo aparece si showMessage es true</p>}
<button onClick={() => setShowMessage(!showMessage)}>Mostrar/Ocultar</button>
</div>
);
}
ReactDOM.createRoot(document.getElementById('root')).render(<App />);
Este mensaje solo aparece si showMessage es true
3️⃣ if-else dentro de funciones
Tambi茅n se puede usar un condicional if-else dentro de la funci贸n antes del return:
function Greeting({ isLoggedIn }) {
if (isLoggedIn) {
return <h2>Hola, usuario!</h2>;
} else {
return <h2>Bienvenido, por favor reg铆strate</h2>;
}
}
function App() {
const [isLoggedIn, setIsLoggedIn] = React.useState(false);
return (
<div>
<Greeting isLoggedIn={isLoggedIn} />
<button onClick={() => setIsLoggedIn(!isLoggedIn)}>Toggle Login</button>
</div>
);
}
ReactDOM.createRoot(document.getElementById('root')).render(<App />);
4️⃣ Mejores pr谩cticas
- ✅ Usar operadores ternarios para condicionales simples dentro del JSX.
- ✅ Usar && para renderizar elementos opcionales.
- ✅ Para l贸gicas m谩s complejas, crear funciones auxiliares o componentes separados.
- ✅ Mantener el JSX limpio evitando demasiados condicionales anidados.
馃挕 Con estas t茅cnicas, tus componentes pueden adaptarse din谩micamente a cualquier estado o condici贸n.
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias