
Using ReactJS - Part 1
Share
Table of contents
###What is ReactJS?
It is a library created by Facebook, focused on the development for web UI components and their performance. It uses what they call "Virtual DOM", updating only parts of the DOM that changed without having to render the whole page or section of the page. This gives them an advantage in performance and rendering times, leaving behind other libraries as AngularJS.
React JS only provides tools for developing web components, but does not provide tools to make Ajax calls, nor events, nor promises, but that is OK, since we would only add the libraries needed, for example: SuperAgent, Kriskowal / q lodash, and AngularJS, which gives the option to do a wrap with the React components with an angular directive.
###How to use it?
React JS operates on classes for rendering HTML, you must first create a class of ract.
[prism:javascript]
var HelloWorld = React.createClass({
render: function() {
return
;
}
});
React.render(new HelloWorld(), document.body);
[/prism:javascript]
The other way to handle variables within the components react are the state, like props any change to a state will cause the component to again, but this time only if the setstate method is used as we see in the increment class method HelloWorld otherwise, no changes will be made to the state; What should I use, props or state? for attributes of sight, as information to be displayed to the user or an icon, use state; if a variable flow control or not related directly to the view, use props or private variables, if the prop is not inherited from a parent view.
ReactJS provides a number of listeners that can override in each class to have control of it is rendered and when rendered, or if we want to be renderize based on any state property or private variable, these methods are:
Hello, {this.props.name}!
;
}
});
React.render(new HelloWorld({ name: "Yohendry Hurtado" }), document.body);
[/prism:javascript]
Here we can see this line : [prism:javascript] return Hello, {this.props.name}!
; [/prism:javascript]
this.props, is an object with all the properties that are assigned when instantiating the component, these properties are the way in which react send the information to the components, as we can see here [prism:javascript]React.render(new HelloWorld({ name: "Yohendry Hurtado" }), document.body);[/prism:javascript] where we change the property name to the HellowWorld component. Any changes to these properties will update the view, as mentioned earlier only where really changed, these changes can come from parents or children view components (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 - runs before rendering first component
- componentDidMount - It runs just after rendering first component
- componentWillUpdate - runs before upgrading the component, if you return false in this listener, you prevent component update
- componentDidUpdate - It runs to update the component
- componentWillUnmount- It executes before destroying a component
Related blogs

Software Platform vs. Application: Key Differences and the Role of Integration Solutions
August 22nd 2025
In a landscape where companies must be astute and adapt to market fluctuations, choosing a standalone app or a complete software system can be the key to success or failure

How platform development services power mobile and cloud solutions
August 22nd 2025
Investing in platform development services, along with mobile enterprise application platforms and cloud solutions, is not just a technological improvement; it's a strategic move that directly impacts operational efficiency

The Complete Guide to Platform Engineering
August 20th 2025
The essence of this discipline is that it considers developers as internal customers. The platform is conceived as a product, with improvements, iterations, and satisfaction metrics, rather than simply a layer of technical tools.

How to receive international payments on your website
August 20th 2025
Learn how to integrate international payment gateways to process purchases from any country, in multiple currencies, and with complete security

POS software vs. billing and inventory software
August 18th 2025
If your company is ready to take the next step in digitalization, now is the time to act

How Healing Agent revolutionizes the robustness of interface-based automations
August 15th 2025
With Healing Agent, UiPath takes a crucial step toward truly autonomous, adaptable automations that are ready for changing environments