feat: override method with default interception behavior #663
This commit is contained in:
@@ -6,7 +6,14 @@
|
||||
import Editor from "@hufe921/canvas-editor"
|
||||
|
||||
const instance = new Editor(container, <IElement[]>data, options)
|
||||
instance.override.overrideFunction = ()=>{}
|
||||
|
||||
instance.override.overrideFunction = () => void | Promise<void> | IOverrideResult | Promise<IOverrideResult>
|
||||
```
|
||||
|
||||
```typescript
|
||||
interface IOverrideResult {
|
||||
preventDefault?: boolean // Prevent the execution of internal default method. Default prevent
|
||||
}
|
||||
```
|
||||
|
||||
## paste
|
||||
@@ -16,7 +23,7 @@ Feature: Override internal paste function
|
||||
Usage:
|
||||
|
||||
```javascript
|
||||
instance.override.paste = (evt?: ClipboardEvent) => void
|
||||
instance.override.paste = (evt?: ClipboardEvent) => void | Promise<void> | IOverrideResult | Promise<IOverrideResult>
|
||||
```
|
||||
|
||||
## copy
|
||||
@@ -26,7 +33,7 @@ Feature: Override internal copy function
|
||||
Usage:
|
||||
|
||||
```javascript
|
||||
instance.override.copy = () => void
|
||||
instance.override.copy = () => void | Promise<void> | IOverrideResult | Promise<IOverrideResult>
|
||||
```
|
||||
|
||||
## drop
|
||||
@@ -36,5 +43,5 @@ Feature: Override internal drop function
|
||||
Usage:
|
||||
|
||||
```javascript
|
||||
instance.override.drop = (evt: DragEvent) => void
|
||||
instance.override.drop = (evt: DragEvent) => void | Promise<void> | IOverrideResult | Promise<IOverrideResult>
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user