Funciones, Props y JSX de React: Guía para principiantes

Go to Homepage

En este artículo descubriremos los conceptos básicos de React

En este artículo, queremos enseñarte los conceptos básicos de React. Nos centraremos en todo lo que necesitas saber para comenzar tu viaje en la programación con esta tecnología.

React es una biblioteca Javascript de código abierto para la creación de interfaces de usuario. Es muy popular en el mundo del desarrollo de aplicaciones, debido a su alta eficiencia y rendimiento. Si bien puede parecer complicado al principio, es una herramienta imprescindible para cualquier programador.

Empecemos por el principio: las funciones en React. En términos simples, una función de React es una forma de crear componentes. Los componentes son el corazón de React y son las piezas de código que componen la interfaz de usuario que un usuario ve en la pantalla. Al crear una función, es esencial tener en cuenta que estas son del tipo “declarativas”. Esto significa que se le dice a la función qué hacer y ella se encarga de hacerlo. Por ejemplo, si queremos crear un componente de botón, necesitamos definirlo utilizando una función de React.

Una característica importante de React son las props. Las props (o propiedades) son los datos que se le pasan a los componentes para configurarlos y personalizarlos. Esto significa que la información que queremos mostrar se puede enviar al componente a través de sus props. Por ejemplo, si queremos crear una lista de elementos, podemos crear un componente y pasarle la información de la lista a través de sus props.

Finalmente, llegamos al JSX. El JSX es una extensión de JavaScript que permite escribir código HTML en el archivo Javascript del componente. Es muy útil porque facilita la creación de componentes y mejora la legibilidad del código. Por ejemplo, podremos escribir nuestro componente de botón y definir su apariencia utilizando JSX. Por lo tanto, podremos definir su apariencia en un solo lugar sin tener que escribir CSS en otro archivo.

Aprender los conceptos básicos de React es fundamental para cualquier programador que esté interesado en el desarrollo de aplicaciones modernas y eficientes. A través de este artículo, hemos visto cómo las funciones de React son la base para la creación de componentes, cómo las props permiten personalizar estos componentes y cómo el JSX hace que la creación sea más fácil. ¡Esperamos que esta guía te haya ayudado a entender un poco más sobre React!

Funciones: la forma en que React manipula la lógica en el archivo de componentes

Cuando empecé a aprender React, uno de los conceptos que más me costó entender fueron las funciones en los componentes. Sabía que eran una especie de “cajas negras” donde se guardaba la lógica de la aplicación, pero no estaba seguro de cómo interactuaban con el resto del código. Afortunadamente, después de leer mucho y practicar, finalmente comencé a entender cómo funcionan estas funciones.

En React, un componente es una función que devuelve un elemento de React. Pero no es solo una función simple, es una función muy especial. Cuando se llama a un componente, React no solo devuelve los elementos que contiene, sino que también realiza un seguimiento de su estado y de cuándo debe volver a renderizarse.

Aquí hay un ejemplo simple de un componente:

function MiComponente() {
    return <h1>Hola, React!</h1>;
}

Esta función devuelve un elemento h1 con el texto “Hola, React!”. Es un componente muy simple, pero ilustra bien lo que es una función de componente.

Una de las cosas que hacen que las funciones de componente sean tan poderosas es que pueden aceptar propiedades (props) como argumentos. Las props son valores que se pasan a un componente de padre a hijo, y se pueden utilizar para personalizar el comportamiento del componente.

function Persona(props) {
    return <h1>Mi nombre es {props.nombre}.</h1>;
}

<Persona nombre="Juan" />;

En este ejemplo, pasamos la prop nombre al componente Persona. Dentro de la función de componente, podemos acceder a esa prop con props.nombre para mostrar el nombre correcto.

Las funciones de componente también pueden leer el estado y actualizarlo con el método useState. Esto le permite a un componente mantener cierta información y “recordar” cosas entre renders.

import React, { useState } from "react";

function Contador() {
    const [contador, setContador] = useState(0);

    function aumentarContador() {
        setContador(contador + 1);
    }

    return (
        <div>
            <h1>Contador: {contador}</h1>
            <button onClick={aumentarContador}>Aumentar</button>
        </div>
    );
}

En este ejemplo, usamos el método useState para crear una variable de estado contador e inicializarla con el valor 0. Luego, creamos una función aumentarContador que aumenta el valor del contador en 1 cada vez que se hace clic en el botón “Aumentar”. Finalmente, mostramos el valor actual del contador en la pantalla.

Las funciones son la forma en que React manipula la lógica en el archivo de componentes. Son la “caja negra” que contiene todo lo que hace que un componente sea único y funcione como se espera. Con la capacidad de aceptar propiedades y leer y actualizar el estado, las funciones de componentes son una poderosa herramienta para crear aplicaciones de React.

Props: cómo pasar datos de un componente a otro

En React, los props son uno de los temas más importantes que debemos conocer. Básicamente, los props son como una “caja” de datos que se les pueden pasar a los componentes para que éstos los procesen y muestren en la pantalla. Veamos un ejemplo sencillo para entender mejor cómo funcionan los props.

Supongamos que queremos crear dos componentes: uno que muestre un título y otro que muestre un mensaje. Para el primer componente, podemos crear algo así:

function Title(props) {
    return <h1>{props.text}</h1>;
}

ReactDOM.render(
    <Title text="Bienvenidos a mi sitio web" />,
    document.getElementById("root")
);

Como podemos ver, creamos un componente Title que acepta un prop text, el cual es un valor de texto que le pasamos al componente desde la llamada al método ReactDOM.render(). Dentro del componente, utilizamos el valor del prop para mostrar un título en la pantalla.

Ahora, supongamos que queremos mostrar un mensaje debajo del título. Podemos crear otro componente para esto:

function Message(props) {
    return <p>{props.text}</p>;
}

ReactDOM.render(
    <div>
        <Title text={"Bienvenidos a mi sitio web"} />
        <Message
            text={
                "Gracias por visitar mi sitio. Espero que disfruten su estadía."
            }
        />
    </div>,
    document.getElementById("root")
);

En este ejemplo, creamos un nuevo componente Message que acepta un prop text y lo utiliza para mostrar un mensaje en la pantalla. Luego, utilizamos ambos componentes dentro de un nuevo componente div que pasamos como segundo parámetro al método ReactDOM.render().

Como puedes ver, los props son una forma muy conveniente de pasar datos entre componentes. Puedes pasar cualquier tipo de valor, incluyendo cadenas de texto, números, objetos, arreglos, etc. También puede pasar cualquier cantidad de props a un componente.

Por supuesto, este es sólo un ejemplo sencillo, pero los props son una parte fundamental del desarrollo en React. A medida que vayas avanzando en tu aprendizaje de React, verás que los props te permiten hacer muchas cosas geniales con tus componentes.

Resumen

  • Los props son como una “caja” de datos que se le pasan a los componentes.
  • Los props pueden llevar cualquier tipo de valor.
  • Puedes pasar cualquier cantidad de props a un componente.
  • Los props son una parte fundamental del desarrollo en React.

JSX: el lenguaje de marcado utilizado para construir la estructura HTML

JSX es el lenguaje de marcado utilizado para construir la estructura HTML en React. Es una extensión de JavaScript que permite escribir HTML dentro de JavaScript, lo que hace que sea más fácil trabajar con elementos de la interfaz de usuario. Si eres nuevo en React, es importante entender cómo funciona JSX y cómo puedes usarlo para construir interfaces de usuario en línea con los estándares modernos de web.

Una de las características más destacadas de JSX es que es fácil de leer y entender. El código JSX se asemeja a HTML, lo que hace que su estructura sea fácil de entender para los diseñadores web y los desarrolladores. Además, puedes usar las mismas etiquetas HTML que estás familiarizado, lo que significa que puedes crear rápidamente una interfaz web sin pasar por una curva de aprendizaje empinada.

Para usar JSX, necesitas tener un compresor JSX. El compresor permite que pueda funcionar JSX en línea con el código fuente de JavaScript. Hay muchas herramientas de compilación de JSX que puedes usar, pero la forma más fácil de comenzar es utilizar el compilador de Babel.

Para crear un elemento en JSX, simplemente escribe una etiqueta HTML en JavaScript. Por ejemplo, si queremos crear un elemento de imagen en JSX, podemos escribirlo así:

const image = <img src="image.jpg" alt="image description" />;

Aquí, estamos creando un elemento de imagen y asignándolo a la variable de imagen. El elemento de imagen tiene una fuente y una descripción de alt, que son propiedades necesarias para que la imagen se muestre correctamente en la página.

En JSX, también puedes usar funciones y props para crear componentes reutilizables. Una función en React es simplemente una función que devuelve un elemento JSX. Los props son datos que se pasan a un componente como argumentos, y luego se pueden usar para personalizar el componente.

Por ejemplo, si queremos crear un componente de encabezado, podemos escribir una función como esta:

function Header(props) {
    return (
        <header>
            <h1>{props.title}</h1>
            <p>{props.description}</p>
        </header>
    );
}

Aquí, estamos creando una función de encabezado que toma dos props: título y descripción. La función devuelve un elemento de encabezado que contiene el título y la descripción. Luego, podemos usar esta función en otras partes de nuestro código, pasando los props adecuados para personalizarlo.

JSX es un lenguaje de marcado utilizado para construir la estructura HTML en React. Es fácil de leer y entender, lo que lo hace ideal para desarrolladores y diseñadores de web. Puedes usar funciones y props para crear componentes reutilizables, lo que hace que sea fácil personalizar tus interfaces de usuario. Si eres nuevo en React, es importante entender cómo funciona JSX y cómo puedes usarlo para crear elementos de la interfaz de usuario.

Una breve introducción a los eventos y ciclos de vida de los componentes de React

Una de las características más interesantes de React es la posibilidad de manejar eventos y ciclos de vida de los componentes. En este artículo, vamos a darte una breve introducción a estos conceptos para que puedas empezar a utilizarlos en tus proyectos de React.

Los eventos son las acciones que realiza el usuario en la interfaz de usuario, como por ejemplo hacer clic en un botón. En React, cada evento está asociado a una acción que se desencadena cuando se produce el evento. Por ejemplo, cuando el usuario hace clic en un botón, se puede llamar a una función que cambie el estado de la aplicación.

Los eventos pueden ser manejados por los componentes utilizando la propiedad onClick, que se encuentra en el objeto props. Por ejemplo, si quieres que un botón cambie el estado de un componente cuando se haga clic en él, puedes agregar el siguiente código JSX:

<button onClick={this.handleClick}>Haz clic aquí</button>

En este ejemplo, estamos asociando la función handleClick al evento onClick. Esta función se llamará cuando el usuario haga clic en el botón.

Los ciclos de vida de los componentes sirven para que el componente realice acciones en momentos específicos de su ciclo de vida. Por ejemplo, cuando un componente se va a montar en la interfaz de usuario, se puede realizar una acción para inicializarlo. O cuando un componente se va a desmontar, se puede realizar una acción para limpiar los recursos que estaba utilizando.

En React, los ciclos de vida de un componente están definidos por una serie de métodos que se llaman automáticamente en momentos específicos. Estos métodos son los siguientes:

  • constructor()
  • componentWillMount()
  • render()
  • componentDidMount()
  • shouldComponentUpdate()
  • componentWillUpdate()
  • componentDidUpdate()
  • componentWillUnmount()

En general, vamos a utilizar el método componentDidMount() para inicializar un componente y el método componentWillUnmount() para limpiar los recursos utilizados por un componente.

Por ejemplo, si queremos imprimir un mensaje en la consola cuando un componente se monta, podemos agregar el siguiente código en el método componentDidMount():

componentDidMount() {
  console.log('El componente se ha montado en la interfaz de usuario');
}

Los eventos y ciclos de vida son dos conceptos muy importantes en React que nos permiten crear componentes interactivos y dinámicos. Utilízalos para crear aplicaciones web modernas y cercanas a las necesidades del usuario.

Otros Artículos