Open In App

React.js Blueprint Collapse Component Props

Last Updated : 17 Aug, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

BlueprintJS is a React-based UI toolkit for the web. This library is very optimized and popular for building interfaces that are complex data-dense for desktop applications. Collapse Component provides a way for users to show and hide content with a built-in slide-in/out animation. In this article, we will create a UI that will showcase React.js BluePrint Collapse Component Props.

Collapse Props:

  • className: It is used to denote a space-delimited list of class names to pass along to a child element.
  • component: It is used to denote the component to render as the root element.
  • isOpen: It is used to indicate whether the component is open or closed.
  • keepChildrenMounted: It is used to indicate whether the child components will remain mounted when the Collapse is closed or not.
  • transitionDuration: It is used to denote the length of time the transition takes, in milliseconds.

Creating React Project and Installing the Module:

Step 1: To create a react app, you need to install react modules through the npx command. “npx” is used instead of “npm” because you will be needing this command in your app’s lifecycle only once.

npx create-react-app project_name

Step 2: After creating your react project, move into the folder to perform different operations.

cd project_name

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

npm install @blueprintjs/core

Project Structure: After running the commands mentioned in the above steps, if you open the project in an editor you can see a similar project structure as shown below. The new component user makes or the code changes, we will be performing will be done in the src folder. 

Project Structure

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

npm start

Example 1: Now write down the following code in the App.js file. Here, we are creating a UI that shows different React.js BluePrint Collapse Component Props.

App.js




import React from "react";
import "@blueprintjs/core/lib/css/blueprint.css";
import { Collapse, Button } from "@blueprintjs/core";
export default function App() {
  
    // State to maintain Collapse isOpen value
    const [isOpen, setIsOpen] = React.useState(false)
  
    return (
        <div style={{ margin: 100, textAlign: "center" }}>
            <h1 style={{ color: "green" }}>GeeksforGeeks</h1>
            <h3 >
                React.js BluePrint Collapse Component Props
            </h3>
            <br />
            <Button onClick={
                () => setIsOpen(!isOpen)}>{
                    isOpen ? "Hide Info" : "Show Info"
                }
            </Button>
            <Collapse isOpen={isOpen}>
                <div style={{ margin: 30 }}>
                    <p>[05:05:30] ... line 1 ...</p>
                    <p>[05:13:20] ... line 2 ...</p>
                    <p>[05:20:40] ... line 3 ...</p>
                    <p>[05:23:30] ... line 4 ...</p>
                    <p>[05:30:00] ... line 5 ...</p>
                </div>
            </Collapse>
        </div>
    );
}


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

 

Example 2: We are creating a UI that shows React.js BluePrint Collapse Component Props.

App.js




import React from "react";
import "@blueprintjs/core/lib/css/blueprint.css";
import { Collapse, Button } from "@blueprintjs/core";
export default function App() {
  
    // State to maintain Collapse isOpen value
    const [isOpen, setIsOpen] = React.useState(false)
  
    return (
        <div class="bp4-dark"
            style={{ margin: 100, textAlign: "center" }}>
            <h1 style={{ color: "green" }}>
                GeeksforGeeks
            </h1>
            <h3 style={{ color: "green" }}>
                React.js BluePrint Collapse Component Props
            </h3>
            <br />
            <Button onClick={() => setIsOpen(!isOpen)}>
                {isOpen ? "Hide Info" : "Show Info"}
            </Button>
            <Collapse isOpen={isOpen} keepChildrenMounted={true}>
                <div 
                    style={{ margin: 30, backgroundColor: "black" }}>
                    <p>[05:05:30] ... line 1 ...</p>
                    <p>[05:13:20] ... line 2 ...</p>
                    <p>[05:20:40] ... line 3 ...</p>
                    <p>[05:23:30] ... line 4 ...</p>
                    <p>[05:30:00] ... line 5 ...</p>
                </div>
            </Collapse>
        </div>
    );
}


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

 

Reference: https://blueprintjs.com/docs/#core/components/collapse.props



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads