
Utilizando ReactJS - Parte 1
Compartir
Tabla de contenido
###¿Qué es ReactJS?
Es una librería creada por Facebook, enfocada en el desarrollo de componentes de UI para la web y su performance. Ésta utiliza lo que ellos llaman “Virtual DOM”, que actualiza sólo las partes del DOM que cambiaron, sin necesidad de tener que hacer render de toda la página o sección de la página. Esto les da una ventaja en performance y tiempos de renderizado, dejando atrás a otras librerías como AngularJS.
ReactJS solo provee las herramientas para el desarrollo de los web components, mas no provee herramientas para hacer llamados ajax, ni eventos, ni promesas, pero esto está bien, ya que nos permitiría agregar solo las librerías que necesitamos, por ejemplo : superagent, kriskowal/q y lodash, angularjs, con este último se pueden usar haciendo wrap de los componentes de react con una directiva de angular.
###¿Cómo se usa?
ReactJS funciona en base a clases, para renderizar HTML, primero debemos crear una clase de ract.
[prism:javascript]
var HelloWorld = React.createClass({
render: function() {
return
;
}
});
React.render(new HelloWorld(), document.body);
[/prism:javascript]
La otra forma de manejar variables dentro de los componentes de react son los state, al igual que los props cualquier cambio hecho a un state causará que el componente haga render de nuevo, pero esta vez solo si se usa el método setState como podemos ver en el método increment de la clase HelloWorld, de otra forma los cambios al state no se realizarán; ¿Qué debo utilizar, props or state? para atributos propios de la vista, como información que se mostrará al usuario o algún ícono, usa state; si es una variable de control de flujo o no relacionada directamente a la vista, usa props o variables privadas, si el prop no es heredado de una vista padre.
ReactJS provee una serie de listeners que podemos sobreescribir en cada clase para tener control de los que se renderiza y cuando se renderiza, o si no queremos que se renderize basado en algún estado, propiedad o variable privada, estos métodos son:
Hello, {this.props.name}!
;
}
});
React.render(new HelloWorld({ name: "Yohendry Hurtado" }), document.body);
[/prism:javascript]
Acá podemos ver esta línea : [prism:javascript] return Hello, {this.props.name}!
; [/prism:javascript]
this.props, es un objeto con todas las propiedades que se asignan al momento de instanciar el componente, estas propiedades son la forma de pasar información a los componentes de react, como podemos apreciar acá [prism:javascript]React.render(new HelloWorld({ name: "Yohendry Hurtado" }), document.body);[/prism:javascript] donde pasamos la propiedad name al componente HellowWorld. Cualquier cambio a estas propiedades hará que la vista se actualice, como mencionamos antes solo el lugar donde cambió realmente, estos cambios pueden venir desde vistas padres o componentes hijos (nested views).
[prism:javascript]
var HelloWorld = React.createClass({
getInitialState: function() {
return {
counter: 0
};
},
increment: function() {
this.setState({ counter: this.state.counter+1 });
},
render: function() {
return {this.state.counter}
- componentWillMountt - se ejecuta antes de renderizar por primera vez el componente
- componentDidMount - se ejecuta justo después de renderizar por primera vez el componente
- componentWillUpdate - se ejecuta antes de actualizar el componente, si retornas false en este listener, previenes la actualización del componente
- componentDidUpdate - se ejecuta al actualizar el componente
- componentWillUnmount- se ejecuta antes de destruir un componente
Blogs relacionados

Core Bancario: Los costos ocultos de la tecnología obsoleta
November 25th 2025
Descubra los riesgos y costos financieros de no modernizar su Core Bancario. Un análisis para líderes sobre el impacto en operaciones y competitividad.

Cómo Pantheon acelera la publicación de contenido: de Google Docs al sitio en minutos
November 24th 2025
En lugar de gestionar múltiples plataformas o entornos de trabajo, los creadores pueden desarrollar su contenido en Google Docs, el entorno donde ya colaboran de manera natural. Desde allí, Pantheon Content Publisher actúa como un puente inteligente que interpreta el documento, mantiene su formato y lo sincroniza con el CMS corporativo

La colaboración empresarial evoluciona con el nuevo Rovo Chat de Atlassian
November 22nd 2025
El nuevo Rovo Chat no solo responde preguntas o ejecuta comandos, sino que comprende la intención y el contexto de los equipos. Gracias a su memoria persistente, el asistente puede recordar información relevante de conversaciones pasadas, decisiones clave y configuraciones específicas de cada usuario o equipo.

Desarrollo de aplicaciones web personalizadas para empresas bancarias
November 19th 2025
Descubra por qué el desarrollo de aplicaciones web a medida es clave para la banca. Mejore la seguridad, UX y escalabilidad con soluciones personalizadas.

Empresa de servicios de desarrollo de software: ¿Qué podríamos hacer?
November 19th 2025
No somos simplemente un proveedor que escribe código; somos socios estratégicos que traducen objetivos comerciales en soluciones digitales tangibles

Fases del desarrollo de aplicaciones móviles: Así es como trabajamos
November 17th 2025
Las fases del desarrollo de aplicaciones móviles representan un proceso estratégico que va mucho más allá del código. Es un camino estructurado diseñado para ofrecer valor, minimizar riesgos y crear un producto que impulse el crecimiento de su empresa