Home » Button in React

Button in React

Buttons allows users to take actions and make choices with a single tap.

They (buttons) communicate the actions that users can perform. It is placed by your UI in places like below:

  • Modal windows
  • Forms
  • Cards
  • Toolbars
  • Basic Button

The Button comes in 3 variants: text (default), contained, and outlined.

Button in React

Text button

Text buttons are used for less-pronounced actions, including those in card dialogs. In cards, the text buttons will help us to maintain an emphasis on card content.

Button in React

Contained Button

Contained buttons are high-emphasis, distinguished by the use of elevation and fill. It contains actions which are primary used in our App.

Button in React

You can remove the elevation with the disable Elevation prop.

Button in React

Outlined Button

Outlined buttons are medium-emphasis buttons. They contain essential actions but not the main action in the app.

Outlined buttons are the lower alternative to contain the buttons or a higher emphasis alternative to the text buttons.

Button in React

Handling clicks

All components accept an onClick handler which is applied to the root DOM element.

Note: The documentation avoid mentioning the native props in our API section of the components.


Button in React

In addition, by using the default button colors, you can add custom or disable any you don’t need.


Use this propertty for larger or smaller buttons.

Button in React

Upload button

Button in React

Buttons with label and icon

Sometimes you may want to have icons for certain buttons to enhance the UX of the application, as we acknowledge logos easier than plain text.

For example, If we want to delete button than you should label it with a dustbin icon.

Button in React

Icon button

Icon buttons are found in toolbars and app bars. Icons are appropriate for toggle buttons which allow the choices to be selected or deselected. Like, adding or removing any item from the label.

Button in React


Use the size prop for larger or smaller icon in button.

Button in React


Button in React

Use color prop to apply the theme color palette to the component.


Button in React

Below are the examples of customizing our component.

Loading button

The loading buttons can show the loading state and disable interactions of the button.

Button in React

Toggle the loading button to see the transition between unrelated positions.

Button in React

Complex button

Icon button, Text button, contained buttons, and floating action buttons are built into a single component which is called as ButtonBase.

Button in React

You can take lower level component to create custom interactions.

Third-party Routing libraries

Navigating the client without an exact HTTP trip to the server is a unique use case. The ButtonBase component provides component properties to handle the use case.


ButtonBase sets the component pointer-events: none; on the disable Button, which prevents the appearance of the disabled cursor.

If you want to use “not allowed”, you have two options:

CSS only: You can remove the pointer-event style on the disabled state of < Button> element:


You should add pointer-events: none; when you needed to display tooltips on disabled elements.

If you render anything other than the button element, then the cursor will not change. For example, a link <a> element.

DOM change. You can wrap the button:

It can support any element, for example, a link <a> element.


The component will comes with the unstyled version. It is ideal for doing heavy optimizations and reducing bundle size.


  • <button >
  • <buttonbase >
  • <iconbutton >
  • <loadingButton >

How to use the button component in ReactJS?

Buttons allow users to take their actions and make choices at a single tap. This component is available to us for React UI content, and it is very easy to integrate. We can use button component in ReactJS by using following approach.

Creating react app and installing modules:

Step 1: Build a React application by using the given below command:

Step 2: After creating the project folder, and name of the folder to navigate it by using the given command:

Step 3: Install the Material-UI module using the following command, after creating the ReactJS application:

Project Structure: It will look as the following.

Button in React

project structure

App.js: Now, you have to write the below code in the App.js file.

Here, the App is the default component where we have written in our code.


Steps to run the application:

Run the application by using the command from the root directory of the project:

Output: Now open your browser and go to http://localhost:3000/. You can see the below output:

Button in React

You may also like