Render a Menu Bar
Tiptap comes with three types of menus.
EditorMenuBar
→ example (opens new window)EditorMenuBubble
→ example (opens new window)EditorFloatingMenu
→ example (opens new window)
To connect a menu to your editor you have to pass the Editor
instance.
EditorMenuBar
<template>
<div>
<editor-menu-bar :editor="editor" v-slot="{ commands, isActive }">
<button :class="{ 'is-active': isActive.bold() }" @click="commands.bold">
Bold
</button>
</editor-menu-bar>
<editor-content :editor="editor" />
</div>
</template>
<script>
import { Editor, EditorContent, EditorMenuBar } from 'tiptap'
import { Bold } from 'tiptap-extensions'
export default {
components: {
EditorMenuBar,
EditorContent,
},
data() {
return {
editor: new Editor({
extensions: [
new Bold(),
],
}),
}
},
beforeDestroy() {
this.editor.destroy()
},
}
</script>