react-resize-layout
This react component resize the layout of HTML using a handle.
Example
npm install --save react-resize-layout react react-dom
or
yarn add react-resize-layout react react-dom
import React from "react";
import { render } from "react-dom";
import { Resize, ResizeVertical, ResizeHorizon } from "react-resize-layout";
// horizon
render(
<Resize handleWidth="5px" handleColor="#777">
<ResizeHorizon width="100px">Horizon 1</ResizeHorizon>
<ResizeHorizon width="200px" minWidth="150px">
Horizon 2
</ResizeHorizon>
<ResizeHorizon minWidth="5px">Horizon 3</ResizeHorizon>
</Resize>,
document.getElementById("example")
);
// vertical
render(
<Resize handleWidth="5px" handleColor="#777">
<ResizeVertical height="100px" minHeight="10px">
Vertical 1
</ResizeVertical>
<ResizeVertical height="200px">Vertical 2</ResizeVertical>
<ResizeVertical minHeight="50px">Vertical 3</ResizeVertical>
</Resize>,
document.getElementById("example2")
);
// horizon and vertical
render(
<Resize handleWidth="2px" handleColor="#000">
<ResizeVertical height="120px" minHeight="50px">
Vertical 1
</ResizeVertical>
<ResizeVertical height="160px" minHeight="20px">
<Resize handleWidth="8px" handleColor="red">
<ResizeHorizon width="90px">Horizon 1</ResizeHorizon>
<ResizeHorizon width="120px">Horizon 2</ResizeHorizon>
<ResizeHorizon minWidth="50px">Horizon 3</ResizeHorizon>
</Resize>
</ResizeVertical>
<ResizeVertical>Vertical 2</ResizeVertical>
</Resize>,
document.getElementById("example3")
);
Usage
//
// When you use either <ResizeHorizon> or <ResizeVertical> component
//
// work
<Resize>
<ResizeHorizon>...</ResizeHorizon>
<ResizeHorizon>...</ResizeHorizon>
</Resize>
// not work
<Resize>
<ResizeHorizon>...</ResizeHorizon>
<ResizeVertical>...</ResizeVertical>
</Resize>
// not work
<Resize>
<ResizeHorizon>...</ResizeHorizon>
<ResizeHorizon>...</ResizeHorizon>
<div>...</div>
</Resize>
API
<Resize>
options |
type |
default |
description |
handleWidth |
string |
"5px" |
handle width |
handleColor |
string |
"#999" |
handle color |
onResizeStart |
callback |
|
Calls when resize start |
onResizeStop |
callback |
|
Calls when resize stop |
onResizeMove |
callback |
|
Calls when resize move |
onResizeWindow |
callback |
|
Calls when window resize |
<ResizeHorizon>
options |
type |
description |
id |
string |
Set the id of the ResizeHorizon component |
className |
string |
Set the className of the ResizeHorizon component |
width |
string |
Set the width of the ResizeHorizon component |
minWidth |
string |
Set the minimum width of the ResizeHorizon component |
overflow |
string |
Set the css overflow property. default value "hidden" |
<ResizeVertical>
options |
type |
description |
id |
string |
Set the id of the ResizeVertical component |
className |
string |
Set the className of the ResizeVertical component |
height |
string |
Set the height of the ResizeVertical component |
minHeight |
string |
Set the minimum height of the ResizeVertical component |
overflow |
string |
Set the css overflow property. default value "hidden" |
GitHub