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 Tooltip component helps in displaying informative text when users hover over, focus on, or tap an element. We can use the following approach in ReactJS to use the ReactJS Reactstrap Tooltip Component.
Tooltip Props:
- children: It is used to pass the children element to this component.
- trigger: It is used to denote a space-separated list of triggers.
- boundariesElement: It is used to denote the boundaries for a popper.
- isOpen: It is used to indicate whether to open tooltip or not.
- hideArrow: It is used to indicate whether to hide an arrow or not.
- toggle: It is a callback function for toggling isOpen in the controlling component.
- target: It is used to denote the target element or element ID.
- container: It is used to indicate where to inject the popper DOM node.
- delay: It is used to denote the delay value.
- className: It is used to denote the class name for styling.
- popperClassName: It is used to apply a class to the popper component.
- innerClassName: It is used to apply a class to the inner-tooltip.
- arrowClassName: It is used to apply a class to the arrow-tooltip.
- autohide: It is used to indicate whether to hide tooltip when hovering over tooltip content or not.
- placement: It is used for the placement of the tooltip.
- modifiers: It is used to denote a custom modifier that are passed to Popper.js
- positionFixed: It is used to indicate whether the tooltip pointing element has position: fixed styling or not.
- offset: It is used to denote offset element.
- innerRef: It is used to denote the inner reference element.
- fade: It is used to indicate whether to show/hide the tooltip with a fade effect.
- flip: It is used to indicate whether to flip the direction of the tooltip if too close to the container edge.
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.
Example 1: Now write down the following code in the App.js file. Here, we have shown a tooltip at the right position without delay props.
App.js
import React from 'react' import 'bootstrap/dist/css/bootstrap.min.css' ; import { Tooltip, Button } from "reactstrap" function App() { // Tooltip Open state const [tooltipOpen, setTooltipOpen] = React.useState( false ); return ( <div style={{ display: 'block' , width: 900, padding: 30 }}> <h4>ReactJS Reactstrap Tooltip Component</h4> <Button id= "TooltipExample" >Hover me to see Tooltip</Button> <Tooltip isOpen={tooltipOpen} placement= "right" target= "TooltipExample" toggle={() => { setTooltipOpen(!tooltipOpen) }}> Sample Tooltip Text... </Tooltip> </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 a tooltip at the bottom position without delay props set to show tooltip after 1 second and hide it after 2 seconds.
App.js
import React from 'react' import 'bootstrap/dist/css/bootstrap.min.css' ; import { Tooltip } from "reactstrap" function App() { // Tooltip Open state const [tooltipOpen, setTooltipOpen] = React.useState( false ); return ( <div style={{ display: 'block' , width: 900, padding: 30 }}> <h4>ReactJS Reactstrap Tooltip Component</h4> <span id= "testID" >Hover Me to see Tooltip!!</span> <Tooltip isOpen={tooltipOpen} delay={{ show:1000, hide: 2000 }} target= "testID" placement= "bottom" toggle={() => setTooltipOpen(!tooltipOpen)}> Sample ToolTip Information... </Tooltip> </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:
Reference: https://reactstrap.github.io/components/tooltips/