add content to the events page
This commit is contained in:
@@ -1,34 +1,43 @@
|
||||
# Events
|
||||
Events are a great way to run code when the editor has been initialized, the content has changed, the editor is in focus or the editor isn’t in focus anymore. There are two ways to add code to those events.
|
||||
|
||||
:::warning Out of date
|
||||
This content is written for tiptap 1 and needs an update.
|
||||
:::
|
||||
|
||||
There are some events you can listen for. A full list of events can be found here.
|
||||
## Option 1: Use hooks
|
||||
Hooks can be assigned to the editor on initialization. Pass a function that gets called in case of those events.
|
||||
|
||||
```js
|
||||
const editor = new Editor({
|
||||
onInit: () => {
|
||||
// editor is initialized
|
||||
// the editor is ready
|
||||
},
|
||||
onUpdate: ({ html }) => {
|
||||
// get new content on update
|
||||
// the content has been changed
|
||||
const newContent = html()
|
||||
},
|
||||
})
|
||||
```
|
||||
|
||||
It's also possible to register event listeners afterwards.
|
||||
## Option 2: Listen for events
|
||||
You can even register event listeners later. Here is the same example with event listeners:
|
||||
|
||||
```js
|
||||
const editor = new Editor(…)
|
||||
const editor = new Editor({
|
||||
// …
|
||||
})
|
||||
|
||||
editor.on('init', () => {
|
||||
// editor is initialized
|
||||
// the editor is ready
|
||||
})
|
||||
|
||||
editor.on('update', ({ html }) => {
|
||||
// get new content on update
|
||||
// the content has been changed
|
||||
const newContent = html()
|
||||
})
|
||||
```
|
||||
|
||||
## List of available hooks & events
|
||||
| Hook | Event | Description |
|
||||
| ---------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `onBlur` | `blur` | Returns an object with the `event` and current `state` and `view` of Prosemirror on blur. |
|
||||
| `onFocus` | `focus` | Returns an object with the `event` and current `state` and `view` of Prosemirror on focus. |
|
||||
| `onInit` | `init` | Returns an object with the current `state` and `view` of Prosemirror on init. |
|
||||
| `onUpdate` | `update` | Returns an object with the current `state` of Prosemirror, a `json()` and `html()` function and the `transaction` on every change. |
|
||||
Reference in New Issue
Block a user