Vue之使用 vue-quill-editor_自定义toolbar_修改图片上传方式

简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。博客源地址为zhixiang.org.cn https://blog.csdn.net/myFirstCN/article/details/80870915 1.
版权声明:本文为博主原创文章,未经博主允许不得转载。博客源地址为zhixiang.org.cn https://blog.csdn.net/myFirstCN/article/details/80870915


1.安装

npm install vue-quill-editor --save

2.引入

import { quillEditor } from 'vue-quill-editor'
components: {
    quillEditor
},

3.使用

<quill-editor v-model="blogContext"   //编辑器内容字段
              ref="myQuillEditor"
              style="background-color: white;"
              class="editer">
</quill-editor>

4.自定义toolbar

因为这个编辑器有一些功能感觉是用不上的,但是如果放着它对用户来说实在不是那么友好,所以就修改了一下源码。我们找到node_modules/vue-quill-editor/src/editor.vue文件,打开这个文件我们会看到一个toolbar属性,大致是这样的:

他们对应的功能的分别是这样的

背景颜色 - background 加粗- bold 颜色 - color 字体 - font 内联代码 - code 斜体 - italic 链接 - link 大小 - size 删除线 - strike 上标/下标 - script 下划线 - underline 引用- blockquote 标题 - header 缩进 - indent 列表 - list 文本对齐 - align 文本方向 - direction 代码块 - code-block 公式 - formula 图片 - image 视频 - video 清除字体样式- clean

大家可以根据自己的需要删除不必要的toolbar。

关于删除以后的源码问题可以参考 我的另一篇文章:Git之如何优雅的修改Vue源码以后让Git记录你修改的那一部分

5.修改文件上传方法

因为默认此编辑器上传的图片是以base64存储的,如果图片多了我们把这个存储到数据库可能就会有各种各样的问题,所以我们需要改一下此图片上传方式。

  1. 首先,我们先放一个Element的上传组件,把它隐藏起来
  2. 我们在给编辑器增加一个拦截器,拦截toolbar为image的组件
this.$refs.myQuillEditor.quill.getModule('toolbar').addHandler('image', this.imgHandler);

3.当用户单击编辑器的文件上传按钮时会调用imgHandler方法,我们在这个方法里面调用第一步隐藏的Element上传组件。

4.紧接着我们把使用的Element上传组件上传完成的图片地址拼接到blogContext属性上就ok了。


1.安装

npm install vue-quill-editor --save

2.引入

import { quillEditor } from 'vue-quill-editor'
components: {
    quillEditor
},

3.使用

<quill-editor v-model="blogContext"   //编辑器内容字段
              ref="myQuillEditor"
              style="background-color: white;"
              class="editer">
</quill-editor>

4.自定义toolbar

因为这个编辑器有一些功能感觉是用不上的,但是如果放着它对用户来说实在不是那么友好,所以就修改了一下源码。我们找到node_modules/vue-quill-editor/src/editor.vue文件,打开这个文件我们会看到一个toolbar属性,大致是这样的:

他们对应的功能的分别是这样的

背景颜色 - background 加粗- bold 颜色 - color 字体 - font 内联代码 - code 斜体 - italic 链接 - link 大小 - size 删除线 - strike 上标/下标 - script 下划线 - underline 引用- blockquote 标题 - header 缩进 - indent 列表 - list 文本对齐 - align 文本方向 - direction 代码块 - code-block 公式 - formula 图片 - image 视频 - video 清除字体样式- clean

大家可以根据自己的需要删除不必要的toolbar。

关于删除以后的源码问题可以参考 我的另一篇文章:Git之如何优雅的修改Vue源码以后让Git记录你修改的那一部分

5.修改文件上传方法

因为默认此编辑器上传的图片是以base64存储的,如果图片多了我们把这个存储到数据库可能就会有各种各样的问题,所以我们需要改一下此图片上传方式。

  1. 首先,我们先放一个Element的上传组件,把它隐藏起来
  2. 我们在给编辑器增加一个拦截器,拦截toolbar为image的组件
this.$refs.myQuillEditor.quill.getModule('toolbar').addHandler('image', this.imgHandler);

3.当用户单击编辑器的文件上传按钮时会调用imgHandler方法,我们在这个方法里面调用第一步隐藏的Element上传组件。

4.紧接着我们把使用的Element上传组件上传完成的图片地址拼接到blogContext属性上就ok了。


相关文章
|
3月前
|
JavaScript API 开发者
vue自定义Hooks函数使用和封装思想
【8月更文挑战第8天】vue自定义Hooks函数使用和封装思想
142 1
|
2月前
|
存储 API
vue3中如何动态自定义创建组件并挂载
vue3中如何动态自定义创建组件并挂载
387 90
|
4月前
|
移动开发 前端开发 JavaScript
基于 HTML5 和 Canvas 开发的在线图片编辑器
基于 HTML5 和 Canvas 开发的在线图片编辑器
94 0
|
14天前
|
JavaScript API
vue3知识点:自定义hook函数
vue3知识点:自定义hook函数
24 2
|
22天前
|
JavaScript 前端开发 API
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
465 0
|
22天前
|
人工智能 JavaScript 程序员
vue中内置指令v-model的作用和常见使用方法介绍以及在自定义组件上支持
vue中内置指令v-model的作用和常见使用方法介绍以及在自定义组件上支持
97 0
|
1月前
|
JavaScript
vue尚品汇商城项目-day07【vue插件-49.(了解)自定义插件】
vue尚品汇商城项目-day07【vue插件-49.(了解)自定义插件】
26 0
|
3月前
|
JavaScript
基于Vue2或Vue3实现任意上下左右拖拽悬浮的元素,且配置为自定义的全局指令
这篇文章介绍了如何在Vue 2或Vue 3项目中实现一个自定义的全局指令`v-dragSwitch`,用于创建可以任意方向拖拽并悬浮的元素,同时包含边界处理的逻辑。
959 2
基于Vue2或Vue3实现任意上下左右拖拽悬浮的元素,且配置为自定义的全局指令
|
3月前
|
存储 JavaScript 前端开发
Vue中通过集成Quill富文本编辑器实现公告的发布。Vue项目中vue-quill-editor的安装与使用【实战开发应用】
文章展示了在Vue项目中通过集成Quill富文本编辑器实现公告功能的完整开发过程,包括前端的公告发布、修改、删除操作以及后端的数据存储和处理逻辑。
Vue中通过集成Quill富文本编辑器实现公告的发布。Vue项目中vue-quill-editor的安装与使用【实战开发应用】
|
3月前
|
JavaScript
在Vue项目中vue-quill-editor的安装与使用【详细图解+过程+包含图片的缩放拖拽】
文章详细介绍了在Vue项目中安装和使用`vue-quill-editor`的步骤,包括如何通过npm安装、局部挂载、在Vue页面中引入和配置使用。同时,还提供了如何实现图片的缩放和拖拽功能的进阶教程,涉及到安装额外的插件`quill-image-drop-module`和`quill-image-resize-module`,以及对Webpack配置的调整。最后,文章还提供了实际效果展示和一些后续可能的拓展功能,如上传视频和将图片上传到服务器等。
在Vue项目中vue-quill-editor的安装与使用【详细图解+过程+包含图片的缩放拖拽】