React JS Show and Hide Div Component Example

In this tutorial, you will learn how to make hide show div component in react js app.

How to Show/Hide Div component in React JS

Just follow the following steps and create hide show div component:

Step 1 – Create React App

In this step, open your cmd and execute the following command to create a new react app:

npx create-react-app my-react-app

To run the React app, execute the following command on your cmd:

npm start

Check out your React app on this URL: localhost:3000

Step 2 – Set up Bootstrap

In this step, run the following command to install the bootstrap library into your react app:

npm install bootstrap --save

Set up bootstrap.min.css file in src/App.js file:

import React from 'react';
import '../node_modules/bootstrap/dist/css/bootstrap.min.css';
function App() {
return (
<div>
<h2>hide show div component in react js</h2>
</div>
);
}
export default App;

Step 3 – Create Hide Show Div Component

Go to src directory of your react js app and create some components named Comp1.js, Comp.js, and Hideshow.js.

Now open Comp1.js file and add following code into it:

import React, { Component } from "react";  
class Comp1 extends Component {
constructor() {
super();
this.state = {
name: "ReactJS"
};
}

render() {
return <div>This is component1</div>;
}
}

export default Comp1;

Now open Comp2.js file and add following code into it:

import React, { Component } from "react";  

class Comp2 extends Component {
constructor() {
super();
this.state = {
name: "ReactJS"
};
}

render() {
return <div>This is component2</div>;
}
}

export default Comp2;

Now open the Hideshow.js file and add the following code to it:

import React, { Component } from 'react'  
import Comp1 from "./Comp1";
import Comp2 from "./Comp2";
export class HideShowDiv extends Component {
constructor() {
super();
this.state = {
name: "ReactJS",
showHideComp1: false,
showHideComp2: false,
};
this.hideComponent = this.hideComponent.bind(this);
}
hideComponent(name) {
console.log(name);
switch (name) {
case "showHideComp1":
this.setState({ showHideComp1: !this.state.showHideComp1 });
break;
case "showHideComp2":
this.setState({ showHideComp2: !this.state.showHideComp2 });
break;
default:
null;
}
}
render() {
const { showHideComp1, showHideComp2 } = this.state;
return (
<div>
<div class="col-sm-12 btn btn-info">
Show Hide component on Click in React JS App
</div>
{showHideComp1 && <Comp1 />}
<hr />
{showHideComp2 && <Comp2 />}
<hr />
<div>
<button className="btn btn-info" onClick={() => this.hideComponent("showHideComp1")}>
Click to hide Demo1 component
</button>
<button className="btn btn-info" onClick={() => this.hideComponent("showHideComp2")}>
Click to hide Demo2 component
</button>
</div>
</div>
);
}
}


export default HideShowDiv

Step 4 – Add Component in App.js

In this step, you need to add HideShowDiv.js file in src/App.js file:

import React from 'react';
import '../node_modules/bootstrap/dist/css/bootstrap.min.css';
import HideShowDiv from './HideShowDiv'
function App() {

  return (
    <div className="App">
      <HideShowDiv />
    </div>
  );
}
export default App;

Conclusion

hide show div component in react js, you have learned how to show and hide div component in react js app.

Recommended React Posts

AuthorDevendra Dode

Greetings, I'm Devendra Dode, a full-stack developer, entrepreneur, and the proud owner of Tutsmake.com. My passion lies in crafting informative tutorials and offering valuable tips to assist fellow developers on their coding journey. Within my content, I cover a spectrum of technologies, including PHP, Python, JavaScript, jQuery, Laravel, Livewire, CodeIgniter, Node.js, Express.js, Vue.js, Angular.js, React.js, MySQL, MongoDB, REST APIs, Windows, XAMPP, Linux, Ubuntu, Amazon AWS, Composer, SEO, WordPress, SSL, and Bootstrap. Whether you're starting out or looking for advanced examples, I provide step-by-step guides and practical demonstrations to make your learning experience seamless. Let's explore the diverse realms of coding together.

Leave a Reply

Your email address will not be published. Required fields are marked *