Altcademy - a Forbes magazine logo Best Coding Bootcamp 2023

How to write a component in ReactJS

Introduction to ReactJS

ReactJS (also known as React) is a JavaScript library that is highly popular amongst developers for building user interfaces, specifically for single-page applications. You can think of it as a Lego set; where each block (component) has a unique role in building the whole structure (the application).

What is a Component in ReactJS?

In React, components are the building blocks of any React application. Each component has its own logic and controls its own rendering. It can be thought of as a self-contained piece of code that you can reuse in different parts of your application, just like how you can use a Lego block in different parts of your building.

The Basics of a React Component

A React component can be written in JavaScript using a mixture of HTML and JavaScript which is known as JSX. Let's illustrate this with a simple code example:

class Welcome extends React.Component {
  render() {
    return <h1>Hello, World!</h1>;
  }
}

In this example, 'Welcome' is a React component that outputs an HTML heading with the text 'Hello, World!'.

Writing Your First Component

Let's now dive in and write our first React component. The first step is to import the React library into our JavaScript file.

import React from 'react';

Next, we define our component. For this example, let's create a simple component that displays a welcome message.

class Welcome extends React.Component {
  render() {
    return <h1>Welcome to my blog!</h1>;
  }
}

This 'Welcome' component is a class that extends React.Component. The render method is a required method in a component class that outputs HTML via the return statement.

Understanding the Render Method

The render method is the only required method in a React component, and it's responsible for describing what should be rendered on the screen. It's like the blueprint of a house, describing what should be built.

Using Our Component

In order to use our Welcome component, we need to include it in our application's render method. Let's say we have an App component that serves as the root component of our application. Here's how you would include the Welcome component:

class App extends React.Component {
  render() {
    return (
      <div>
        <Welcome />
      </div>
    );
  }
}

In this example, the <Welcome /> tag is how we use our Welcome component. The output of the App component will now include the output of the Welcome component, resulting in a webpage that displays 'Welcome to my blog!'.

Conclusion

Congratulations! You've just written your first React component. It's like you've just built your first Lego structure. The concept might seem simple, but the power of React comes from the ability to combine these simple components to build complex user interfaces.

With this knowledge, you're now ready to start building more complex components and applications. Remember, just like with Lego, the key is to break down your application into small, manageable parts (components) and then assemble them to create your masterpiece.

In future posts, we'll cover more advanced topics like component props, state, and lifecycle methods. Stay tuned, and happy coding!