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. ResizeSensor Component provides a way for users to provides them a resize event for its single DOM element child. We can use the following approach in ReactJS to use the ReactJS Blueprint ResizeSensor Component.
ResizeSensor Props:
- observeParents: It is used to indicate that all parent DOM elements of the container will also be observed for size changes if this is set to true.
- onResize: It is a callback that is triggered when the wrapped element resizes.
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 @blueprintjs/core
Project Structure: It will look like the following.
Example: Now write down the following code in the App.js file. Here, App is our default component where we have written our code.
App.js
import React from 'react' import '@blueprintjs/core/lib/css/blueprint.css' ; import { ResizeSensor } from "@blueprintjs/core" ; function App() { return ( <div style={{ display: 'block' , width: 400, padding: 30 }}> <h4>ReactJS Blueprint ResizeSensor Component</h4> <ResizeSensor onResize={(entries) => console.log(entries.map(e => `${e.contentRect.width} x ${e.contentRect.height}`))}> <div style={{ width: 300, backgroundColor: 'green' , height: 50 }}> Size: 300 X 50 </div> </ResizeSensor> </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://blueprintjs.com/docs/#core/components/resize-sensor