Vue中使用WangEditor富文本编辑框实现文本编辑与展示

devtools/2024/10/19 17:46:04/

在Web开发过程中,富文本编辑器是一个非常重要的功能。本文将介绍如何在Vue项目中集成WangEditor富文本编辑框,实现文本编辑并在页面上展示。

一、WangEditor简介

WangEditor是一款基于JavaScript开发的富文本编辑器,具有轻量级、易用性等优点。它支持多种格式文本编辑,如标题、段落、列表、图片、视频等,非常适合用于博客、论坛、在线文档等场景。

二、准备工作

在开始集成WangEditor之前,请确保您的项目中已安装Vue。以下是本文所需的环境和依赖:

  1. Node.js
  2. Vue CLI
  3. WangEditor(版本:^4.7.0)

三、集成WangEditor

1、安装WangEditor

在项目根目录下,运行以下命令安装WangEditor:

npm install wangeditor --save

2、选项式API中使用WangEditor

在选项式API中,我们通常会在组件的mounted钩子中初始化WangEditor,并在methods中定义相关的方法。

javascript"><template><div><div ref="editor" style="text-align:left;"></div><button @click="getContent">获取内容</button><div v-html="editorContent" style="border:1px solid #ccc; margin-top:10px; padding:10px;"></div></div>
</template><script>
import E from 'wangeditor'export default {name: 'WangEditor',data() {return {editor: null,editorContent: ''}},mounted() {this.initEditor()},methods: {initEditor() {this.editor = new E(this.$refs.editor)this.editor.customConfig.onchange = (html) => {this.editorContent = html}this.editor.create()},getContent() {console.log(this.editorContent)}}
}
</script>

3、组合式API中使用WangEditor

在组合式API中,我们使用setup函数来组织代码。setup函数是Vue 3中的新特性,它运行在组件的生命周期之前,是组件的入口。

javascript"><template><div><div ref="editorRef" style="text-align:left;"></div><button @click="getContent">获取内容</button><div v-html="editorContent" style="border:1px solid #ccc; margin-top:10px; padding:10px;"></div></div>
</template><script>
import { ref, onMounted } from 'vue'
import E from 'wangeditor'export default {name: 'WangEditor',setup() {const editorRef = ref(null)const editorContent = ref('')const initEditor = () => {const editor = new E(editorRef.value)editor.customConfig.onchange = (html) => {editorContent.value = html}editor.create()}const getContent = () => {console.log(editorContent.value)}onMounted(() => {initEditor()})return {editorRef,editorContent,getContent}}
}
</script>

在组合式API中,我们使用ref来定义响应式数据,并使用onMounted生命周期钩子来初始化编辑器。setup函数返回的对象中的属性和方法都可以在模板中直接使用。 

本文介绍了在Vue项目中集成WangEditor富文本编辑框的方法,通过简单的步骤实现了文本编辑与展示。希望对您在开发过程中有所帮助。如有疑问,请随时提问。

 


http://www.ppmy.cn/devtools/125066.html

相关文章

Spring中使用的设计模式

单例模式&#xff1a; 在Spring的配置文件中&#xff0c;当我们定义一个Bean而没有指定其作用域时&#xff0c;它默认是单例的。这意味着无论我们多少 次请求这个Bean&#xff0c;Spring都会返回同一个实例。这有助于节省系统资源&#xff0c;因为相同的对象只会被创建一次。 工…

高效微调理解(prompt-tuning,p-tuning v1,p-tuning v2,lora)

高效微调&#xff08;prompt-tuning&#xff0c;p-tuning v1&#xff0c;p-tuning v2&#xff0c;lora&#xff09; 1.prompt-tuning&#xff1a; 例子理解&#xff1b;保持原本模型参数不变&#xff0c;通过训练提示词的参数调整prompt&#xff0c;使其与下游任务匹配。 例子…

深度学习+点云实现双目相机物体3D尺寸测量(长、宽、高)

目录 1&#xff0c;深度学习 2&#xff0c;点云 3&#xff0c;双目相机 4&#xff0c;深度学习与点云结合 5&#xff0c;效果展示 1&#xff0c;深度学习 深度学习是机器学习的一个子领域&#xff0c;它基于人工神经网络的学习算法。深度学习模型能够学习数据的多层次表示…

云原生知识点-系统架构师(七十九)

1介绍SOA&#xff1f;介绍ESB&#xff1f; 解析&#xff1a; SOA是面向服务架构&#xff0c;提供ESB总线将各个独立的服务关联起来&#xff0c;解耦各个服务直接关联&#xff0c;通过ESB服务总线把他们关联起来。 ESB服务总线支持不同服务的数据格式统一转换&#xff0c;保证…

架构师知识梳理(八):系统安全

信息安全概念 信息安全包括5个基本要素&#xff1a;机密性、完整性、可用性、可控性与可审查性。 机密性&#xff1a;确保信息不暴露给未授权的实体或进程。完整性&#xff1a;只有得到允许的人才能修改数据&#xff0c;并且能够判别出数据是否已被篡改。可用性&#xff1a;得…

【数据结构】邻接表

一、概念 邻接表是一个顺序存储与链式存储相结合的数据结构&#xff0c;用于描述一个图中所有节点之间的关系。 若是一个稠密图&#xff0c;我们可以选择使用邻接矩阵&#xff1b;但当图较稀疏时&#xff0c;邻接矩阵就显得比较浪费空间了&#xff0c;此时我们就可以换成邻接…

【C语言】使用结构体实现位段

文章目录 一、什么是位段二、位段的内存分配1.位段内存分配规则练习1练习2 三、位段的跨平台问题四、位段的应用五、位段使用的注意事项 一、什么是位段 在上一节中我们讲解了结构体&#xff0c;而位段的声明和结构是类似的&#xff0c;它们有两个不同之处&#xff0c;如下&…

C语言内存管理

内存分布 C代码编译过程 预处理 宏定义展开、头文件展开、条件编译&#xff0c;这里并不会检查语法编译 检查语法&#xff0c;将预处理后文件编译生成汇编文件汇编 将汇编文件生成目标文件(二进制文件)链接 将目标文件链接为可执行程序 进程的内存分布 程序运行起来(没有结…