wangeditor富文本编辑器的使用(vue)
官网
官方demo
参考
安装
yarn add @wangeditor/editor
yarn add @wangeditor/editor-for-vue
封装的富文本组件
<template><div style="border: 1px solid #ccc"><Toolbarstyle="border-bottom: 1px solid #ccc":editor="editorRef":defaultConfig="toolbarConfig":mode="mode"/><Editorstyle="height: 40vh; overflow-y: hidden"v-model="valueHtml":defaultConfig="editorConfig":mode="mode"@onCreated="handleCreated"/></div>
</template>
<script>
import "@wangeditor/editor/dist/css/style.css"; // 引入 cssimport {onBeforeUnmount,watch,defineEmits,ref,shallowRef,onMounted,
} from "vue";
import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
import { message } from "ant-design-vue";
import netUrl from "@/views/miniprogram/uploadApi.js";
const token = ''
export default {components: { Editor, Toolbar },setup(props, { emit }) {// const emits = defineEmits(["onChange"]);// 编辑器实例,必须用 shallowRefconst editorRef = shallowRef();// 内容 HTMLconst valueHtml = ref("");watch(() => valueHtml,(n) => {emit("onChangeValueHtml", n.value);},{ deep: true, immediate: true });// 模拟 ajax 异步获取内容onMounted(() => {// setTimeout(() => {// valueHtml.value = "<p>模拟 Ajax 异步设置内容</p>";// }, 1500);});const toolbarConfig = {excludeKeys: ["fullScreen","readOnly","emotion","code","group-video","undo", // 撤销"redo", // 重复"insertTable","codeBlock",],};const editorConfig = {placeholder: "请在这里输入内容...",MENU_CONF: {// 配置上传图片uploadImage: {// 请求路径server: `${netUrl}`,headers: { Authorization: token },// 后端接收的文件名称fieldName: "file",maxFileSize: 1 * 1024 * 1024, // 1M// 上传的图片类型allowedFileTypes: ["image/*"],// 小于该值就插入 base64 格式(而不上传),默认为 0base64LimitSize: 10 * 1024, // 10MB// 自定义插入返回格式【后端返回的格式】customInsert(res, insertFn) {if (res.code != 20000) {message.error("上传文件失败," + res.message);return;}insertFn(res.data, res.data, res.data);},// 携带的数据meta: {imageSource: 1,},// 将 meta 拼接到 url 参数中,默认 false// 单个文件上传成功之后onSuccess(file, res) {if (res.code == 20000) {message.success(`${file.name} 上传成功`);return;} else {message.warning(`${file.name} 上传出了点异常`);return;}},// 单个文件上传失败onFailed(file, res) {console.log(res);message.error(`${file.name} 上传失败`);},// 上传错误,或者触发 timeout 超时onError(file, err, res) {console.log(err, res);message.error(`${file.name} 上传出错`);},},},};// 组件销毁时,也及时销毁编辑器onBeforeUnmount(() => {const editor = editorRef.value;if (editor == null) return;editor.destroy();});const handleCreated = (editor) => {editorRef.value = editor; // 记录 editor 实例,重要!// console.log(editor.getConfig(), "editor.getAllMenuKeys()");};return {editorRef,valueHtml,mode: "default", // 或 'simple'toolbarConfig,editorConfig,handleCreated,};},
};
</script>
工具栏修改
可以在官网提供的页面查看工具栏配置
更多配置详解
toolbar.getConfig()

相关文章:
wangeditor富文本编辑器的使用(vue)
官网 官方demo 参考 安装 yarn add wangeditor/editor yarn add wangeditor/editor-for-vue 封装的富文本组件 <template><div style"border: 1px solid #ccc"><Toolbarstyle"border-bottom: 1px solid #ccc":editor"editorRef"…...
物联网水表有什么弊端吗?
物联网水表作为新一代智能水表,虽然在很大程度上提高了水资源的管理效率,但也存在一定的弊端。在这篇文章中,我们将详细讨论物联网水表的弊端,以帮助大家更全面地了解这一技术。 一、安全隐患 1.数据泄露:物联网水表通…...
安卓 车轮视图 WheelView kotlin
安卓 车轮视图 WheelView kotlin 前言一、代码解析1.初始化2.初始化数据3.onMeasure4.onDraw5.onTouchEvent6.其他 6.ItemObject二、完整代码总结 前言 有个需求涉及到类似这个视图,于是在网上找了个轮子,自己改吧改吧用,拿来主义当然后&…...
升级Redisson版本兼容问题
升级版本:从 3.10.6 升级到3.18.0 报错: java.io.IOException: Unsupported protocol version 252 java.io.IOException: Unsupported protocol version 252at org.jboss.marshalling.river.RiverUnmarshaller.start(RiverUnmarshaller.java:1375)at org.redisson…...
前端框架Bootstrap
前端框架Bootstrap 该框架已经帮我们写好了很多页面样式,如果需要使用,只需要下载对应文件 直接CV拷贝即可 在使用Bootstrap的时候,所有的页面样式只需要通过修改class属性来调节即可 什么是Bootstrap Bootstrap是一个开源的前端框架…...
Flink SQL TopN语句详解
TopN 定义(⽀持 Batch\Streaming): TopN 对应离线数仓的 row_number(),使⽤ row_number() 对某⼀个分组的数据进⾏排序。 应⽤场景: 根据 某个排序 条件,计算 某个分组 下的排⾏榜数据。 SQL 语法标准&am…...
k8s之数据卷
一,存储卷 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态&#…...
服务器网络
配置 通常使用ping查看网络 如果能ping通,不能ssh登陆,安装 sudo apt update sudo apt install openssh-server如果已经安装,查看防火墙状态,inactive(不活跃) sudo ufw status sudo ufw allow ssh sudo ufw reload查看ssh状态 s…...
YOLOv8-seg 分割代码详解(一)Predict
前言 本文从 U-Net 入手熟悉分割的简单方法,再看 YOLOv8 的方法。主要梳理 YOLOv8 的网络结构,以及 Predict 过程的后处理方法。 U-Net 代码地址:https://github.com/milesial/Pytorch-UNet YOLOv8 代码地址:https://github.com/…...
Docker学习——④
文章目录 1、Docker Image(镜像)2、镜像命令详解2.1 docker rmi2.2 docker save2.3 docker load2.4 docker image inspect2.5 docker history2.6 docker image prune 3、镜像综合实战3.1 离线镜像迁移3.2 镜像存储的压缩与共享 1、Docker Imageÿ…...
Android选项卡TabHost
选项卡主要由TabHost(标签,主人),TabWidget(微件)和FrameLayout3个组件组成,用于实现一个多标签页的用户界面。 1. TabHost在XML文件中添加: XML布局文件中添加选项卡时必须使用系统id来为各组件指定id属性。 <TabHostandro…...
qml添加滚动条
import QtQuick.Controls 2.15ScrollBar.vertical: ScrollBar {visible: flick1.contentHeight > flick1.heightanchors.right: parent.rightanchors.rightMargin: 40width: 10active: truecontentItem: Rectangle {radius: 6opacity: 0.5color: "#7882A0"} }...
elementui-plus el-tree组件数据不显示问题解决
当前情况: 显示: 注意看右侧的树是没有文字的,数据已经渲染,个数是对的,但就是没有文字, 解决: 对比以后发现是template中的#default{data}没有写大括号导致的 所以写上大括号后: 正常显示...
EMR 磁盘挂载解读与磁盘扩容操作
云上的计算实例挂载的存储盘通常可以在线实现磁盘扩容。本文以 AWS EMR 节点的磁盘扩容为例,记录一下具体的操作步骤。在详细介绍前,先将重要的总结发在前面,便于以后查阅: EMR 磁盘分配规则是: 第一磁盘(/dev/nvme0n1),必备,大小由控制台的"EBS root volume&qu…...
小程序day04
目标 自定义组件 创建组件 引用组件 局部引用 全局引用 组件的函数定义到metods节点中,梦回vue2. 样式 数据,方法,属性 下划线开头的称为自定义方法,非下划线开头的都是事件处理函数。 神特么,this.datathis.pro…...
哪些人更容易受到网络攻击?
当下,企业的安全已从传统的外部网络安全威胁防御,逐渐延伸到内部威胁防御。很多时候IT基础设施被攻陷不是外部造成,而是内部使然,这些内部威胁要复杂得多且难以管理。那么,哪些员工最脆弱、最有可能给企业组织带来网络…...
sql语句-实体属性有集合怎么批量查询
1、背景 前端返回一个实体类,实体类里还有集合。要对集合外的属性查询,还要对集合批量查询,并且属性可能为空。返回给前端的结果是个实体类,实体类里有集合。 2、前端实体类 public class AppletSyncDiseaseInfoBO {// 病害信息…...
临界资源,临界区,通信的干扰问题(互斥),信号量(本质,上下文切换问题,原子性,自身的安全性,操作)
目录 引入 概念 临界资源 临界区 干扰存在原因 互斥 信号量 引入 举例 概念 介绍 表示可用资源数 表示等待进程数 申请信号量 信号量的本质 全局变量? 共享内存? 不安全问题 -- 上下文切换 原子性 信号量自身的安全性 原子操作的意义 操作 引入 通信…...
工具介绍——第三方软件远程连接(工具:Rustdesk)
文章目录 前言一、使用工具二、开始演示1、拿下目标主机权限后上传文件2、运行目标主机上的rustdesk-1.1.9.exe文件3、目标主机上whoami查看现在的用户4、查找目标主机上连接的文件,并添加连接密码5、目标主机重启rustdesk的应用程序6、本地连接主机 前言 这里主要…...
【脑机接口 算法】EEGNet: 通用神经网络应用于脑电信号
EEGNet: 神经网络应用于脑电信号 中文题目论文下载:算法程序下载:摘要1 项目介绍2 EEGNet网络原理2.1EEGNet原理架构2.2FBCCA 算法2.3自适应FBCCA算法 3EEGNet网络实现4结果 中文题目 论文下载: DOI: 算法程序下载: 地址 摘要…...
无需安装软件!CMD命令行解压ZIP压缩包完全指南
在日常工作和文件管理中,ZIP压缩包是最常见的文件格式之一。许多人依赖第三方软件如WinRAR或7-Zip来处理ZIP文件,但你知道吗?Windows系统自带的命令提示符(CMD)同样能高效完成ZIP压缩包的解压任务。掌握这一技能不仅能…...
深度对比:瑞芯微RK3588边缘盒子 vs 其他方案,在智慧油站车牌识别场景下的真实表现
智慧油站车牌识别实战:RK3588边缘计算盒子的性能突围战 当加油站开始拥抱智能化转型,车牌识别系统便成了连接物理世界与数字服务的"第一道闸机"。在华北某连锁油站的改造案例中,技术团队曾面临这样的困境:传统工控机处理…...
品牌升级后卖不动,先别怪设计公司
品牌升级了,为什么销量没变化?很多企业做品牌升级,心里其实都憋着一口气。老板觉得产品不差,工厂不差,渠道也不是完全没有基础,就是品牌看起来有点旧,包装有点老,表达有点土…...
Phi-3.5-mini-instruct效果展示:256 tokens内精准归纳长文本,实测对比效果
Phi-3.5-mini-instruct效果展示:256 tokens内精准归纳长文本,实测对比效果 1. 模型核心能力解析 Phi-3.5-mini-instruct作为一款轻量级文本生成模型,在中文处理领域展现出令人惊喜的表现。经过实测,该模型最突出的能力在于精准归…...
NVIDIA AI Enterprise与Azure ML整合优化企业AI应用
1. NVIDIA AI Enterprise与Azure Machine Learning的强强联合在当今企业AI应用落地的过程中,技术团队普遍面临三大挑战:GPU资源利用率低、AI工具链碎片化严重、生产环境部署复杂。NVIDIA AI Enterprise与Azure Machine Learning的深度整合,恰…...
开源力量:OpenCore Legacy Patcher让老Mac焕发新生的完整指南 [特殊字符]
开源力量:OpenCore Legacy Patcher让老Mac焕发新生的完整指南 🚀 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 还在为老款Mac无法升…...
示波器探针原理、类型与选型指南
1. 示波器探针基础概念解析示波器探针是电子测量系统中至关重要的连接环节,它构成了被测电路与示波器之间的桥梁。理解探针的工作原理和特性对于获得准确的测量结果至关重要。1.1 探针的本质功能示波器探针本质上是一个信号传输网络,主要实现三个核心功能…...
php内核 内核网络请求底层限制与安全管控
PHP 内核层网络请求安全,最佳方式是“默认全拒绝,按白名单放行”,并且在 4 层一起做:内核/扩展拦截 PHP 配置 业务 SDK for shortcuts系统防火墙。────────────────────────────────────…...
汽车变速箱加工工艺及夹具设计(毕业设计)论文+CAD图纸+工艺卡+文献翻译……
汽车变速箱作为车辆动力传输的核心部件,其加工质量直接影响整车性能与可靠性。在变速箱制造过程中,加工工艺与夹具设计是保障零件精度、提升装配效率的关键环节。加工工艺需综合考虑材料特性、加工顺序及刀具选择,例如齿轮类零件需通过滚齿、…...
Unity着色器编译核心指令与优化技巧详解
1. Unity着色器编译基础与核心指令解析在Unity游戏开发中,着色器是图形渲染管线的核心组件,负责将3D几何数据转换为屏幕上的2D像素。Unity支持多种着色器语言,其中CG/HLSL是最常用的选择。让我们深入探讨着色器编译的核心机制和优化技巧。1.1…...
