react-draggable-resizable
React Component for draggable and resizable component
安装
使用npm
npm install react-draggable-resizable --save
使用yarn
yarn add react-draggable-resizable
基本使用
import React from 'react'import ReactDOM from 'react-dom'import ReactDraggableResizable from 'react-draggable-resizable' Component { thisstate = width: 0 height: 0 left: 0 right: 0 } { this } { this } { const left top width height = thisstate return <ReactDraggableResizable = = = = > <div> <div>left: left</div> <div>top: top</div> <div>width: width</div> <div>height: height</div> </div> </ReactDraggableResizable> } ReactDOM
Props
active
- Type:
Boolean
- Required:
false
- Default:
false
用于控制组件的状态
<ReactDraggableResizable =></ReactDraggableResizable>
draggable
- Type:
Boolean
- Required:
false
- Default:
true
控制组件是否能够拖动
<ReactDraggableResizable =></ReactDraggableResizable>
resizable
- Type:
Boolean
- Required:
false
- Default:
true
控制组件是否能够缩放
w
- Type:
Number
- Required:
false
- Default:
200
拖动元素的初始化宽度
<ReactDraggableResizable =></ReactDraggableResizable>
h
- Type:
Number
- Required:
false
- Default:
200
拖动元素的初始化高度
<ReactDraggableResizable =></ReactDraggableResizable>
minw
- Type:
Number
- Required:
false
- Default:
50
拖动元素的最小宽度
<ReactDraggableResizable =></ReactDraggableResizable>
minh
- Type:
Number
- Required:
false
- Default:
50
拖动元素的最小高度
<ReactDraggableResizable =></ReactDraggableResizable>
x
- Type:
Number
- Required:
false
- Default:
0
拖动元素初始left值
<ReactDraggableResizable =></ReactDraggableResizable>
y
- Type:
Number
- Required:
false
- Default:
0
拖动元素初始top值
<ReactDraggableResizable =></ReactDraggableResizable>
z
- Type:
String | Number
- Required:
false
- Default:
auto
拖动元素的zIndex值
<ReactDraggableResizable =></ReactDraggableResizable>
handles
- Type:
Array
- Required:
false
- Default:
['tl', 'tm', 'tr', 'mr', 'br', 'bm', 'bl', 'ml']
控制元素可以拖动的方向
tl
- 左上角tm
- 上边的中部tr
- 右上角mr
- 右边的中部br
- 右下角bm
- 下边的中部bl
- 左下角ml
- 左边的中部
<ReactDraggableResizable =></ReactDraggableResizable>
axis
- Type:
String
- Required:
false
- Default:
both
控制拖动元素的拖动的方向
<ReactDraggableResizable ='x'></ReactDraggableResizable>
grid
- Type:
Array
- Required:
false
- Default:
[1,1]
控制拖动元素在x和y轴的每次移动的距离
<ReactDraggableResizable =></ReactDraggableResizable>
parent
- Type:
Boolean
- Required:
false
- Default:
false
控制拖动元素是否只能在父节点中移动和缩放
<ReactDraggableResizable =></ReactDraggableResizable>
maximize
- Type:
Boolean
- Required:
false
- Default:
false
设置为true,则双击拖动元素,充满父元素
<ReactDraggableResizable =></ReactDraggableResizable>
activated
- Type:
Function
- Required:
false
- Parameters:
无
当拖动元素被点击的时候调用
<ReactDraggableResizable = > </ReactDraggableResizable>
deactivated
- Type:
Function
- Required:
false
- Parameters:
无
点击拖动元素之外的区域,拖动元素失去焦点的时候调用
<ReactDraggableResizable = > </ReactDraggableResizable>
resizing
- Type:
Function
- Required:
false
- Parameters:
left
拖动元素的left值top
拖动元素的top值width
拖动元素的宽度height
拖动元素的高度
当拖动元素被缩放的时候被调用
<ReactDraggableResizable => </ReactDraggableResizable>
resizestop
- Type:
Function
- Required:
false
- Parameters:
left
拖动元素的left值top
拖动元素的top值width
拖动元素的宽度height
拖动元素的高度
当拖动元素缩放停止的时候被调用
<ReactDraggableResizable => </ReactDraggableResizable>
dragging
- Type:
Function
- Required:
false
- Parameters:
left
拖动元素的left值top
拖动元素的top值
当拖动元素被拖动的时候调用
<ReactDraggableResizable => </ReactDraggableResizable>
dragstop
- Type:
Function
- Required:
false
- Parameters:
left
拖动元素的left值top
拖动元素的top值
当拖动元素拖动停止的时候调用
<ReactDraggableResizable => </ReactDraggableResizable>