Vue2 前端开发 - vue-quill-editor 富文本编辑器(编辑器基础案例、编辑器配置参数解读、编辑器事件)

一、vue-quill-editor

1、vue-quill-editor 概述
  1. vue-quill-editor 是一个基于 Quill 富文本编辑器的 Vue 组件

  2. vue-quill-editor 在 Vue 2 项目中可以很方便地集成与使用

2、vue-quill-editor 安装
  • 执行如下指令,安装 vue-quill-editor
npm install vue-quill-editor --save

二、vue-quill-editor 基础案例

1、案例演示
<template><div><quill-editor v-model="content" ref="myQuillEditor" :options="editorOption"></quill-editor><button @click="submitContent">提交内容</button></div>
</template><script>import { quillEditor } from "vue-quill-editor";import "quill/dist/quill.core.css";import "quill/dist/quill.snow.css";import "quill/dist/quill.bubble.css";export default {components: {quillEditor,},data() {return {content: "",editorOption: {theme: "snow",modules: {toolbar: [["bold", "italic", "underline", "strike"],["blockquote", "code-block"],[{ list: "ordered" }, { list: "bullet" }],[{ header: [1, 2, 3, 4, 5, 6, false] }],[{ color: [] }, { background: [] }],[{ align: [] }],["clean"],],},},};},methods: {submitContent() {console.log("提交的内容:", this.content);},},};
</script>
2、案例解读
(1)导入组件与样式
  1. 导入组件
import { quillEditor } from "vue-quill-editor";
  1. 导入样式
import "quill/dist/quill.core.css";
import "quill/dist/quill.snow.css";
import "quill/dist/quill.bubble.css";
样式说明
quill.core.css编辑器的核心样式
quill.snow.css提供 snow 主题的样式
quill.bubble.css提供 bubble 主题的样式
(2)注册组件与使用
  1. 注册 quillEditor 组件
components: {quillEditor,
},
  1. 使用 quillEditor 组件
<quill-editor v-model="content" ref="myQuillEditor" :options="editorOption"></quill-editor>
(3)定义数据
data() {return {content: "",editorOption: {theme: "snow",modules: {toolbar: [["bold", "italic", "underline", "strike"],["blockquote", "code-block"],[{ list: "ordered" }, { list: "bullet" }],[{ header: [1, 2, 3, 4, 5, 6, false] }],[{ color: [] }, { background: [] }],[{ align: [] }],["clean"],],},},};
},
数据说明
content编辑器内容
editorOption编辑器配置参数
(4)定义方法
  • 对编辑器内容进行相关处理
methods: {submitContent() {console.log("提交的内容:", this.content);},
},

editorOption: {theme: "snow",modules: {toolbar: [["bold", "italic", "underline", "strike"],["blockquote", "code-block"],[{ list: "ordered" }, { list: "bullet" }],[{ header: [1, 2, 3, 4, 5, 6, false] }],[{ color: [] }, { background: [] }],[{ align: [] }],["clean"],],},
},

三、vue-quill-editor 编辑器配置参数解读

1、theme
theme: "snow",
  • theme 用于指定编辑器的主题样式,可选值为 snow 或 bubble
  1. snow:这是一个带有顶部工具栏的主题,工具栏固定显示在编辑器上方,方便用户随时使用编辑工具

  2. bubble’:这是一个没有顶部工具栏的主题,当用户选中文本时,会以气泡菜单的形式弹出编辑工具

2、modules
modules: {toolbar: [["bold", "italic", "underline", "strike"],["blockquote", "code-block"],[{ list: "ordered" }, { list: "bullet" }],[{ header: [1, 2, 3, 4, 5, 6, false] }],[{ color: [] }, { background: [] }],[{ align: [] }],["clean"],],
},
  1. modules 是一个对象,用于配置编辑器的各种模块,这里主要配置了 toolbar 模块,即工具栏

  2. toolbar 是一个二维数组,每一个子数组代表工具栏上的一行按钮组

["bold", "italic", "underline", "strike"]
  1. 这一行配置了四个基本的文本样式按钮,分别是加粗(bold)、斜体(italic)、下划线(underline)、删除线(strike

  2. 点击这些按钮可以对选中文本应用相应的样式

["blockquote", "code-block"]
  1. 这一行配置了两个按钮,分别是引用(blockquote)、代码块(code-block

  2. 点击引用按钮可以将选中文本设置为引用格式,点击代码块按钮则将选中文本设置为代码块格式

[{ list: "ordered" }, { list: "bullet" }]
  1. 这一行配置了有序列表(ordered)和无序列表(bullet)按钮

  2. 点击有序列表按钮可以将选中文本转换为有序列表,点击无序列表按钮则转换为无序列表

[{ header: [1, 2, 3, 4, 5, 6, false] }]
  1. 这一行配置了一个标题设置按钮

  2. header 后面的数组 [1, 2, 3, 4, 5, 6, false] 表示提供了 1 - 6 级标题选项,false 表示可以将文本设置为普通段落

  3. 可以通过下拉菜单选择不同级别的标题

[{ color: [] }, { background: [] }]
  1. 这一行配置了两个颜色选择按钮,分别是文字颜色(color)、背景颜色(background

  2. 点击按钮会弹出颜色选择器,用户可以选择所需的颜色

[{ align: [] }]
  1. 这一行配置了一个文本对齐方式按钮

  2. 点击按钮会弹出对齐方式选项,包括左对齐、居中对齐、右对齐、两端对齐等

["clean"]
  1. 这一行配置了一个清除格式按钮

  2. 点击该按钮可以清除选中文本的所有格式,将其恢复为普通文本


四、vue-quill-editor 事件

1、基本介绍
事件说明
ready当编辑器初始化完成并准备好接受用户输入时触发
focus当编辑器获得焦点时触发
blur当编辑器失去焦点时触发
change当编辑器内容发生变化时触发
2、演示
<template><div><quill-editor v-model="content" ref="myQuillEditor" :options="editorOption" @ready="onEditorReady" @focus="onEditorFocus" @blur="onEditorBlur" @change="onEditorChange"></quill-editor><button @click="submitContent">提交内容</button></div>
</template><script>import { quillEditor } from "vue-quill-editor";import "quill/dist/quill.core.css";import "quill/dist/quill.snow.css";import "quill/dist/quill.bubble.css";export default {components: {quillEditor,},data() {return {content: "",editorOption: {theme: "snow",modules: {toolbar: [["bold", "italic", "underline", "strike"],["blockquote", "code-block"],[{ list: "ordered" }, { list: "bullet" }],[{ header: [1, 2, 3, 4, 5, 6, false] }],[{ color: [] }, { background: [] }],[{ align: [] }],["clean"],],},},};},methods: {submitContent() {console.log("提交的内容:", this.content);},onEditorReady() {console.log("编辑器已准备好");},onEditorFocus() {console.log("编辑器获得焦点");},onEditorBlur() {console.log("编辑器失去焦点");},onEditorChange(e) {console.log("编辑器内容已改变");console.log(e);},},};
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/914983.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/914983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

断网情况下,网线直连 Windows 笔记本 和Ubuntu 服务器

在断网情况下&#xff0c;通过网线直连 Windows 笔记本 和 Ubuntu 服务器&#xff0c;并使用 VSCode 访问服务器及 Docker 容器 的步骤如下&#xff1a;1. 物理连接&#xff08;网线直连&#xff09; 1.1 使用网线连接 用 网线&#xff08;Cat5e 或更高&#xff09; 连接 Windo…

消息队列总结

为什么需要消息队列&#xff1f; 随着互联网快速发展&#xff0c;业务规模不断扩张&#xff0c;技术架构从单体演进到微服务&#xff0c;服务间调用复杂、流量激增。为了解耦服务、合理利用资源、缓冲流量高峰&#xff0c;「消息队列」应运而生&#xff0c;常用于异步处理、服务…

C#引用转换核心原理:类型视角切换

&#x1f50d; C#引用转换核心原理&#xff1a;类型视角切换 引用类型由内存指针和类型标记组成&#xff08;如图1&#xff09;。引用转换不改变内存地址&#xff0c;仅改变编译器识别对象的“视角”&#xff1a; B myVar1 new B(); // 实际B类型对象 A myVar2 (A)myV…

重要发布丨MaxKB V2正式发布,助力用户快速构建企业级智能体

2025年7月18日&#xff0c;MaxKB V2版本正式发布。MaxKB是一个强大易用的企业级智能体平台&#xff0c;致力于解决企业AI落地所面临的技术门槛高、部署成本高、迭代周期长等问题&#xff0c;让企业用户落地AI更简单。 秉承“开箱即用&#xff0c;伴随成长”的设计理念&#xff…

大语言模型任务分解与汇总:从认知瓶颈到系统化解决方案

一、缘起&#xff1a;为什么大模型需要"分而治之" 1.1 从一个真实场景说起 设想这样一个场景&#xff1a;你要求GPT-4帮你完成一份包含市场调研、竞品分析、财务预测和战略规划的商业计划书。即使是最先进的大模型&#xff0c;面对这样的复杂任务也会"力不从心&…

Spring核心注解@RequestMapping详解

RequestMapping 是 Spring Framework 中一个核心注解&#xff0c;用于在 Spring MVC&#xff08;或 Spring WebFlux&#xff09;中将 HTTP 请求映射到特定的处理器&#xff08;Controller 中的方法&#xff09;或处理器类。它告诉 Spring 框架&#xff1a;当一个匹配特定条件的…

OSPF路由协议的协商过程

OSPF的知识点非常多&#xff0c;协议过程也是一个不大不小的知识点&#xff0c;今天就简单的说一下&#xff0c;OSPF是如何进行协商的。OSPF&#xff08;Open Shortest Path First&#xff09;协议是一种用于路由选择的动态链路状态协议&#xff0c;是大型网络普遍使用的动态路…

MySql:索引,结构

文章目录注意事项结构注意事项 主键字段在建表时&#xff0c;会自动创建主键索引添加唯一约束时&#xff0c;数据库实际上会添加唯一索引。 解释&#xff1a; 增&#xff1a;创建&#xff1a; create [unique] index 索引名 on 表名 (字段名……)&#xff1b;-- 举例 :给tb…

ts学习2

JavaScript 中的每个值都有一组行为&#xff0c;您可以通过运行不同的操作来观察这些行为。这听起来很抽象&#xff0c;但作为一个简单的例子&#xff0c;考虑我们可能在名为 message 的变量上运行的一些操作。 // Accessing the property toLowerCase // on message and then…

k8s环境使用Operator部署Seaweedfs集群(下)

作者&#xff1a;闫乾苓 文章目录4.4.3 部署seaweedfs集群4.4.4 验证集群运行状态4.4.5 测试集群功能4.4.3 部署seaweedfs集群 集群Yaml示例 apiVersion: seaweed.seaweedfs.com/v1 kind: Seaweed metadata:name: seaweed1namespace: default spec:image: chrislusf/seaweedf…

【橘子分布式】gRPC(理论篇)

一、简介 我们在前面学习了thrift rpc的知识&#xff0c;我们从其中接触到了IDL&#xff0c;编解码协议&#xff0c;服务的远程调用(调用远程服务就像在在本地调用一样)等各种概念。 其实我个人对thrift的使用并不多&#xff0c;我更多的是使用今天我们要提到的一个RPC框架称之…

OSPF高级特性之GR

一、概述OSPF GR(Graceful Restart),在路由器发生故障或管理员干预的情况下重启了OSPF进程时,重新构建控制平面时,转发平面不受影响,仍可以正常转发数据。在我们OSPF网络环境当中,假设路由器为框式路由器,通常框式路由器有多个主控板,当主主控板发生故障时会切换到备主控板上。…

iOS 构建配置与 AdHoc 打包说明

iOS 构建配置与 AdHoc 打包说明 1. 背景 在 iOS 项目中&#xff0c;通常需要支持 多个环境的构建和分发&#xff0c;比如&#xff1a; 开发环境 (Debug) → 本地调试内测环境 (AdHoc) → 提供 QA / 产品经理测试预发布环境 (AdHoc_Release) → 和正式版配置一致&#xff0c;但通…

【52】MFC入门到精通——MFC串口助手(二)---通信版(发送数据 、发送文件、数据转换、清空发送区、打开/关闭文件),附源码

文章目录1 完整 功能展示2 添加控件变量及声明2.1 添加控件及变量2.2 SerialPortDlg.h: 头文件3 函数实现3.1 数据发送3.1.2 写数据、字符串转3.2 发送文件3.2.1 打开文件3.2.2 发送文件3.3 清空发送区4 完整MFC项目项下载1 完整 功能展示 串口通信助手 页面展示&#xff0c;功…

笔试——Day12

文章目录第一题题目思路代码第二题题目&#xff1a;思路代码第三题题目&#xff1a;思路代码第一题 题目 删除公共字符 思路 模拟&#xff1a; 遇到需要删除的字符&#xff0c;则不添加到结果中 代码 第二题 题目&#xff1a; 两个链表的第一个公共结点 思路 模拟&#x…

SpringMVC @ResponseBody注解详解

概要ResponseBody是 Spring MVC 中的一个重要注解&#xff0c;用于指示方法的返回值应该直接作为 HTTP 响应体返回&#xff0c;而不是解析为视图名称。基本功能ResponseBody主要用于将Java对象转换为HTTP响应体&#xff08;通常是JSON或XML&#xff09;绕过视图解析器直接返回数…

剑指offer——模拟:顺时针打印矩阵

模拟vector.size返回的是矩阵的行数&#xff0c;vector[0].size返回的是矩阵的列数先排除传入的矩阵是空矩阵先计算上下左右的边界只要边界不重合&#xff0c;就不停止输出&#xff0c;完成一个部分的打印&#xff0c;就将当前的一个边界回收不可以在for循环结束的时候一起判断…

electron-vite实践成品项目

羊驼的工具箱 项目地址 推荐使用该版本 并且使用yarn进行安装 node版本:v22.16.0 技术栈&#xff1a;electron vue3 vite pinia vuetify3 sequelize sqlite Q:为什么vue3要用 vue2的写法 A:其实是因为刚开始用vue3的写法感觉超级恶心 对属性的赋值和方法的管理可观性…

自学中医笔记(一)

我的中医自学笔记 Q&A 自学原因&#xff1a;最开始我也不太信中医&#xff0c;我室友也说中医太玄学了。由于我从小一直都很瘦&#xff0c;吃饭每次都吃得少&#xff0c;上大学那会儿171cm最多也才101斤&#xff0c;而且一年胃病要犯好几次&#xff0c;后来无意中收获了一篇…

3.1 WPF画折线图、直方图、饼状图

本文看了博客WPF编程&#xff0c;Live Charts使用说明&#xff08;2&#xff09;——使用_func<chartpoint, string> labelpoint-CSDN博客&#xff0c;这里作为笔记用。 1.前端代码 前端XAML文件代码如下&#xff1a; <Window x:Class"livechart1.MainWindow&…