mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-06-15 11:52:26 +00:00
129 lines
2.3 KiB
Markdown
129 lines
2.3 KiB
Markdown
---
|
||
title: Dragon
|
||
sidebar_position: 99
|
||
---
|
||
> **@types** [IPublicModelDragon](https://github.com/alibaba/lowcode-engine/blob/main/packages/types/src/shell/model/dragon.ts)<br/>
|
||
> **@since** v1.0.0
|
||
|
||
## 基本介绍
|
||
|
||
拖拽对象
|
||
|
||
### 对应接口
|
||
```typescript
|
||
import { IPublicModelDragon } from '@alilc/lowcode-types';
|
||
```
|
||
|
||
### 支持版本
|
||
|
||
**@since** v1.1.0
|
||
|
||
## 属性
|
||
|
||
### dragging
|
||
|
||
是否正在拖动
|
||
|
||
```typescript
|
||
/**
|
||
* is dragging or not
|
||
*/
|
||
get dragging(): boolean;
|
||
```
|
||
|
||
## 方法
|
||
|
||
### onDragstart
|
||
|
||
绑定 dragstart 事件
|
||
|
||
```typescript
|
||
/**
|
||
* 绑定 dragstart 事件
|
||
* bind a callback function which will be called on dragging start
|
||
* @param func
|
||
* @returns
|
||
*/
|
||
onDragstart(func: (e: IPublicModelLocateEvent) => any): () => void;
|
||
```
|
||
|
||
### onDrag
|
||
|
||
绑定 drag 事件
|
||
```typescript
|
||
/**
|
||
* 绑定 drag 事件
|
||
* bind a callback function which will be called on dragging
|
||
* @param func
|
||
* @returns
|
||
*/
|
||
onDrag(func: (e: IPublicModelLocateEvent) => any): () => void;
|
||
```
|
||
|
||
### onDragend
|
||
|
||
绑定 dragend 事件
|
||
|
||
```typescript
|
||
/**
|
||
* 绑定 dragend 事件
|
||
* bind a callback function which will be called on dragging end
|
||
* @param func
|
||
* @returns
|
||
*/
|
||
onDragend(func: (o: { dragObject: IPublicModelDragObject; copy?: boolean }) => any): () => void;
|
||
```
|
||
|
||
### from
|
||
|
||
设置拖拽监听的区域 shell,以及自定义拖拽转换函数 boost
|
||
|
||
```typescript
|
||
/**
|
||
* 设置拖拽监听的区域 shell,以及自定义拖拽转换函数 boost
|
||
* set a html element as shell to dragon as monitoring target, and
|
||
* set boost function which is used to transform a MouseEvent to type
|
||
* IPublicTypeDragNodeDataObject.
|
||
* @param shell 拖拽监听的区域
|
||
* @param boost 拖拽转换函数
|
||
*/
|
||
from(shell: Element, boost: (e: MouseEvent) => IPublicTypeDragNodeDataObject | null): any;
|
||
```
|
||
|
||
### boost
|
||
|
||
发射拖拽对象
|
||
```typescript
|
||
/**
|
||
* 发射拖拽对象
|
||
* boost your dragObject for dragging(flying)
|
||
*
|
||
* @param dragObject 拖拽对象
|
||
* @param boostEvent 拖拽初始时事件
|
||
*/
|
||
boost(dragObject: IPublicTypeDragObject, boostEvent: MouseEvent | DragEvent, fromRglNode?: Node | IPublicModelNode): void;
|
||
```
|
||
|
||
### addSensor
|
||
|
||
添加投放感应区
|
||
|
||
```typescript
|
||
/**
|
||
* 添加投放感应区
|
||
* add sensor area
|
||
*/
|
||
addSensor(sensor: any): void;
|
||
```
|
||
|
||
### removeSensor
|
||
|
||
移除投放感应
|
||
|
||
```typescript
|
||
/**
|
||
* 移除投放感应
|
||
* remove sensor area
|
||
*/
|
||
removeSensor(sensor: any): void;
|
||
``` |