vue-quill 编辑器重写工具栏,并绑定事件
时间: 2024-10-22 19:15:34 浏览: 50
Vue-quill 是一个用于 Vue.js 环境下的富文本编辑器,它基于 Quill.js 进行封装。如果你想自定义它的工具栏并绑定特定的事件,你可以按照以下步骤操作:
1. **引入库**:首先在项目中安装 Vue-quill,通过npm或yarn命令:
```
npm install vue-quill-editor
```
2. **注册组件**:在你的 Vue 组件中导入并注册 VueQuillEditor 组件:
```html
<template>
<vue-quill-editor v-model="content" :options="editorOptions"></vue-quill-editor>
</template>
<script>
import { VueQuillEditor } from 'vue-quill-editor'
export default {
components: {
VueQuillEditor
},
data() {
return {
content: '',
editorOptions: {
modules: {
toolbar: [
['bold', 'italic', 'underline'], // 基础样式
[{ 'format': 'blockquote' }, { 'direction': 'rtl' }],
['link', 'image'] // 插入链接和图片
]
}
}
}
}
}
</script>
```
3. **自定义工具栏**:`toolbar`属性接受一个数组,你可以添加、移除或替换其中的按钮及其功能。例如,你想添加一个新的“删除线”按钮,可以这样做:
```javascript
editorOptions.modules.toolbar = [
...// 原有的按钮
['strike']
]
```
4. **绑定事件**:Vue-quill 提供了一些内置的事件,如 `text-change`(内容改变)、`selection-change`(选区变化)。如果你需要定制其他事件,可以在`modules`选项中添加对应的模块,比如 `modules: { customEvents: true }`。然后在自定义插件中监听你需要的事件,如下所示:
```javascript
VueQuillEditor.componentOptions.props.options.plugins.add('custom-events', {
onTextChange: function delta(editor, delta) {
console.log('Content changed:', delta);
}
});
```
阅读全文