Open In App

ReactJS Reactstrap ButtonDropdown Component

Last Updated : 07 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Reactstrap is a popular front-end library that is easy to use React Bootstrap 4 components. This library contains the stateless React components for Bootstrap 4. The ButtonDropdown component is used to render a group or split button dropdown bootstrap component. We can use the following approach in ReactJS to use the ReactJS Reactstrap ButtonDropdown Component.

ButtonDropdown Props:

  • disabled: It is used to indicate whether the component is disabled or not.
  • direction: It is used to denote the direction of the elements like left, right, etc.
  • group: It is used to indicate whether to apply the group class or not.
  • isOpen: It is used to indicate whether it is in an open state or not.
  • tag: It is used to denote the tag props for this component.
  • toggle: It is a callback function that is triggered on the toggle of this component.

DropdownToggle Props:

  • caret: It is used to indicate whether to apply the caret class or not.
  • color: It is used to denote the color of the component. 
  • disabled: It is used to indicate whether the component is disabled or not.  
  • onClick: It is a callback function that is triggered on click of this component.
  • data-toggle: It is used to indicate whether to apply the data-toggle class or not.
  • aria-haspopup: It is used to indicate whether to apply the aria-haspopup class or not.

 

Creating React Application And Installing Module:

Step 1: Create a React application using the following command:

npx create-react-app foldername

Step 2: After creating your project folder i.e. foldername, move to it using the following command:

cd foldername

Step 3: After creating the ReactJS application, Install the required module using the following command:

npm install reactstrap bootstrap

Project Structure: It will look like the following.

Project Structure

Example 1: Now write down the following code in the App.js file. Here, App is our default component where we have written our code.

Javascript




import React from 'react'
import 'bootstrap/dist/css/bootstrap.min.css';
import {
    DropdownMenu, DropdownItem,
    ButtonDropdown, DropdownToggle
} from "reactstrap"
  
function App() {
  
    // ButtonDropdown open state
    const [dropdownOpen, setOpen] = React.useState(false);
  
    return (
        <div style={{
            display: 'block', width: 700, padding: 30
        }}>
            <h4>ReactJS Reactstrap ButtonDropdown Component</h4>
            <ButtonDropdown toggle={() => { setOpen(!dropdownOpen) }}
                isOpen={dropdownOpen}>
                <DropdownToggle className="bg-primary" caret>
                    Sample Button Dropdown
                </DropdownToggle>
                <DropdownMenu>
                    <DropdownItem header>Numeric Characters
                    </DropdownItem>
                    <DropdownItem>One</DropdownItem>
                    <DropdownItem>Two</DropdownItem>
                    <DropdownItem>Three</DropdownItem>
                    <DropdownItem>Four</DropdownItem>
                    <DropdownItem>Five</DropdownItem>
                    <DropdownItem>Six</DropdownItem>
                    <DropdownItem>Seven</DropdownItem>
                    <DropdownItem>Eight</DropdownItem>
                    <DropdownItem>Nine</DropdownItem>
                    <DropdownItem>Zero</DropdownItem>
                </DropdownMenu>
            </ButtonDropdown>
        </div >
    );
}
  
export default App;


 

Step to Run Application: Run the application using the following command from the root directory of the project:

npm start

Output: Now open your browser and go to http://localhost:3000/, you will see the following output:

Example 2: Now write down the following code in the App.js file. Here we have shown the dropdown component with the use of Header, Active, Disabled, and divider props.

Javascript




import React from 'react'
import 'bootstrap/dist/css/bootstrap.min.css';
import {
    DropdownMenu, DropdownItem,
    ButtonDropdown, DropdownToggle
} from "reactstrap"
  
function App() {
  
    return (
        <div style={{
            display: 'block', width: 700, padding: 30
        }}>
            <h4>ReactJS Reactstrap ButtonDropdown Component</h4>
            <ButtonDropdown isOpen={true}>
                <DropdownToggle className="bg-secondary">
                    Different Props Applied</DropdownToggle>
                <DropdownMenu>
                    <DropdownItem header>Header Item</DropdownItem>
                    <DropdownItem active>Active Item</DropdownItem>
                    <DropdownItem disabled>Disabled Item</DropdownItem>
                    <DropdownItem divider>Divider Item</DropdownItem>
                </DropdownMenu>
            </ButtonDropdown>
        </div >
    );
}
  
export default App;


Step to Run Application: Run the application using the following command from the root directory of the project:

npm start

Output: Now open your browser and go to http://localhost:3000/, you will see the following output:

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads