馃敼 Creaci贸n de componentes en React: funciones y buenas pr谩cticas
En React, los componentes funcionales son la manera m谩s moderna y sencilla de construir la interfaz de usuario. Permiten reutilizar c贸digo, mantener la l贸gica separada y hacer que la aplicaci贸n sea m谩s escalable.
1️⃣ Componente funcional b谩sico
Un componente funcional es simplemente una funci贸n que retorna JSX:
function Welcome(props) {
return <h1>Hola, {props.name}!</h1>;
}
ReactDOM.createRoot(document.getElementById('root')).render(<Welcome name="Jorge" />);
Hola, Jorge!
2️⃣ Componente con varias l铆neas de JSX
Podemos retornar m煤ltiples elementos agrup谩ndolos en un contenedor como <div> o usando <></> (Fragment):
function Profile(props) {
return (
<>
<h2>{props.name}</h2>
<p>Edad: {props.age}</p>
<p>Ciudad: {props.city}</p>
</>
);
}
ReactDOM.createRoot(document.getElementById('root')).render(
<Profile name="Ana" age={28} city="Madrid" />
);
Ana
Edad: 28
Ciudad: Madrid
Edad: 28
Ciudad: Madrid
3️⃣ Uso de props para personalizar componentes
Los props permiten pasar informaci贸n a los componentes y hacerlos din谩micos:
function Button(props) {
return <button className="btn btn-primary">{props.label}</button>;
}
ReactDOM.createRoot(document.getElementById('root')).render(
<Button label="Click aqu铆" />
);
4️⃣ Buenas pr谩cticas al crear componentes
- ✅ Nombrar los componentes con may煤scula inicial (
Welcome,Profile). - ✅ Mantener componentes peque帽os y espec铆ficos.
- ✅ Usar props para pasar datos y evitar hardcodear valores.
- ✅ Evitar l贸gica compleja dentro del JSX; usar funciones auxiliares.
- ✅ Documentar la finalidad de cada componente.
5️⃣ Componente con l贸gica interna
Podemos agregar funciones dentro del componente para manipular datos antes de renderizar:
function Greeting(props) {
const message = `¡Bienvenido, ${props.name}! Hoy es ${new Date().toLocaleDateString()}.`;
return <h1>{message}</h1>;
}
ReactDOM.createRoot(document.getElementById('root')).render(<Greeting name="Jorge" />);
¡Bienvenido, Jorge! Hoy es 13/11/2025
馃挕 Los componentes funcionales combinan simplicidad y flexibilidad para construir interfaces modernas en React.
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias