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.
Project Structure
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