Home

Awesome

rc-drag

rc-drag is a react-based drag-and-zoom component library that provides a flexible drag configuration and allows us to scale from different angles. ❤️ Mobile drag and drop is supported.

Table of Contents

Demos

<img src="./captured.gif" width="360px" /> <img src="./01.png" width="360px" /> <img src="./02.png" width="360px" />

Installation

npm i @alex_xu/rc-drag

or

yarn add @alex_xu/rc-drag

API

参数说明类型默认值
container画布元素或者画布id (Canvas element or canvas id)HTMLElementstring
pos画布初始化坐标 (The canvas initializes the coordinates)[x:number, y:number][0, 0]
size拖拽组件大小 (Drag component size)[w:number, h:number][100, 100]
isStatic是否禁止拖拽(Whether drag is prohibited)booleanfalse
zIndex拖拽元素的层级 (Drag the level of the element)number1
onDragStart鼠标拖拽开始 (The drag and drop begins)fn(item) => void
onDragStop鼠标拖拽结束 (The drag ends)fn(item) => void
closetodo--
onClosetodo--

usage

// 导入
import { Drag } from '@alex_xu/rc-drag'

<div id="box">
    <Drag container="#box">123</Drag>
    <Drag 
      container="#box" 
      pos={[0, 50]}
      size={[100, 100]}
    >
      <img src="https://github.com/MrXujiang/h5-Dooring/raw/master/public/logo.png" />
    </Drag>
</div>

Partner project

Contribute

If you have a feature request, please add it as an issue or make a pull request.

If you have a bug to report, please reproduce the bug in issue to help us easily isolate it.

TODO List