wangEditor系列之工具栏配置

news/2024/10/23 7:38:00/

文章の目录

  • 一、查看工具栏的默认配置
  • 二、查询编辑器注册的所有菜单 key (可能有的不在工具栏上)
  • 三、重新配置工具栏,显示哪些菜单,以及菜单的排序、分组
  • 四、在当前 toolbarKeys 的基础上继续插入新菜单,如自定义扩展的菜单
  • 五、想排除掉某些菜单,其他都保留
  • 六、将菜单弹出的 modal 添加到 body 下
  • 写在最后


一、查看工具栏的默认配置

import { DomEditor } from "@wangeditor/editor";
...
const toolbar = DomEditor.getToolbar(this.editor);
const curToolbarConfig = toolbar.getConfig();
console.log(curToolbarConfig);

mode为default

{"toolbarKeys": ["headerSelect","blockquote","|","bold","underline","italic",{"key": "group-more-style","title": "更多","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M204.8 505.6m-76.8 0a76.8 76.8 0 1 0 153.6 0 76.8 76.8 0 1 0-153.6 0Z\"></path><path d=\"M505.6 505.6m-76.8 0a76.8 76.8 0 1 0 153.6 0 76.8 76.8 0 1 0-153.6 0Z\"></path><path d=\"M806.4 505.6m-76.8 0a76.8 76.8 0 1 0 153.6 0 76.8 76.8 0 1 0-153.6 0Z\"></path></svg>","menuKeys": ["through","code","sup","sub","clearStyle"]},"color","bgColor","|","fontSize","fontFamily","lineHeight","|","bulletedList","numberedList","todo",{"key": "group-justify","title": "对齐","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M768 793.6v102.4H51.2v-102.4h716.8z m204.8-230.4v102.4H51.2v-102.4h921.6z m-204.8-230.4v102.4H51.2v-102.4h716.8zM972.8 102.4v102.4H51.2V102.4h921.6z\"></path></svg>","menuKeys": ["justifyLeft","justifyRight","justifyCenter","justifyJustify"]},{"key": "group-indent","title": "缩进","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M0 64h1024v128H0z m384 192h640v128H384z m0 192h640v128H384z m0 192h640v128H384zM0 832h1024v128H0z m0-128V320l256 192z\"></path></svg>","menuKeys": ["indent","delIndent"]},"|","emotion","insertLink",{"key": "group-image","title": "图片","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M959.877 128l0.123 0.123v767.775l-0.123 0.122H64.102l-0.122-0.122V128.123l0.122-0.123h895.775zM960 64H64C28.795 64 0 92.795 0 128v768c0 35.205 28.795 64 64 64h896c35.205 0 64-28.795 64-64V128c0-35.205-28.795-64-64-64zM832 288.01c0 53.023-42.988 96.01-96.01 96.01s-96.01-42.987-96.01-96.01S682.967 192 735.99 192 832 234.988 832 288.01zM896 832H128V704l224.01-384 256 320h64l224.01-192z\"></path></svg>","menuKeys": ["insertImage","uploadImage"]},{"key": "group-video","title": "视频","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M981.184 160.096C837.568 139.456 678.848 128 512 128S186.432 139.456 42.816 160.096C15.296 267.808 0 386.848 0 512s15.264 244.16 42.816 351.904C186.464 884.544 345.152 896 512 896s325.568-11.456 469.184-32.096C1008.704 756.192 1024 637.152 1024 512s-15.264-244.16-42.816-351.904zM384 704V320l320 192-320 192z\"></path></svg>","menuKeys": ["insertVideo","uploadVideo"]},"insertTable","codeBlock","divider","|","undo","redo","|","fullScreen"],"excludeKeys": [],"insertKeys": {"index": 0,"keys": []},"modalAppendToBody": false
}

mode为simple

{"toolbarKeys": ["blockquote","header1","header2","header3","|","bold","underline","italic","through","color","bgColor","clearStyle","|","bulletedList","numberedList","todo","justifyLeft","justifyRight","justifyCenter","|","insertLink",{"key": "group-image","title": "图片","iconSvg": "<svg viewBox=\"0 0 1024 1024\"><path d=\"M959.877 128l0.123 0.123v767.775l-0.123 0.122H64.102l-0.122-0.122V128.123l0.122-0.123h895.775zM960 64H64C28.795 64 0 92.795 0 128v768c0 35.205 28.795 64 64 64h896c35.205 0 64-28.795 64-64V128c0-35.205-28.795-64-64-64zM832 288.01c0 53.023-42.988 96.01-96.01 96.01s-96.01-42.987-96.01-96.01S682.967 192 735.99 192 832 234.988 832 288.01zM896 832H128V704l224.01-384 256 320h64l224.01-192z\"></path></svg>","menuKeys": ["insertImage","uploadImage"]},"insertVideo","insertTable","codeBlock","|","undo","redo","|","fullScreen"],"excludeKeys": [],"insertKeys": {"index": 0,"keys": []},"modalAppendToBody": false
}

下方分别介绍对面得四个属性

二、查询编辑器注册的所有菜单 key (可能有的不在工具栏上)

const allMenuKeys = this.editor.getAllMenuKeys();
console.log(allMenuKeys);

结果如下

["bold", // 粗体"underline", // 下划线"italic", // 斜体"through", // 删除线"code", // 行内代码"sub", // 下标"sup", // 上标"clearStyle", // 清除格式"color", // 字体颜色"bgColor", // 背景色"fontSize", // 字号"fontFamily", // 字体"indent", // 增加缩进"delIndent", // 减少缩进"justifyLeft", // 左对齐"justifyRight", // 右对齐"justifyCenter", // 居中对齐"justifyJustify", // 两端对齐"lineHeight", // 行高"insertImage", // 网络图片"deleteImage", // 删除图片"editImage", // 编辑图片"viewImageLink", // 查看链接"imageWidth30", // 图片宽度相对于编辑器宽度的百分比30"imageWidth50", // 图片宽度相对于编辑器宽度的百分比50"imageWidth100", // 图片宽度相对于编辑器宽度的百分比100"divider", // 分割线"emotion", // 表情"insertLink", // 插入链接"editLink", // 修改链接"unLink", // 取消链接"viewLink", // 查看链接"codeBlock", // 代码块"blockquote", // 引用"headerSelect", // 标题"header1", // 标题1"header2", // 标题2"header3", // 标题3"header4", // 标题4"header5", // 标题5"todo", // 待办"redo", // 重做"undo", // 撤销"fullScreen", // 全屏"enter", // 回车"bulletedList", // 无序列表"numberedList", // 有序列表"insertTable", // 插入表格"deleteTable", // 删除表格"insertTableRow", // 插入行"deleteTableRow", // 删除行"insertTableCol", // 插入列"deleteTableCol", // 删除列"tableHeader", // 表头"tableFullWidth", // 宽度自适应"insertVideo", // 插入网络视频"uploadVideo", // 上传视频"editVideoSize", // 修改视频尺寸"uploadImage", // 上传图片"codeSelectLang" // 选择语言
]

三、重新配置工具栏,显示哪些菜单,以及菜单的排序、分组

分组可以给key设置 |

toolbarConfig: {toolbarKeys: ["bold"]
}

四、在当前 toolbarKeys 的基础上继续插入新菜单,如自定义扩展的菜单

toolbarConfig: {insertKeys: {index: 1, // 插入的位置,基于当前的 toolbarKeyskeys: ["headerSelect", "italic"]}
}

五、想排除掉某些菜单,其他都保留

toolbarConfig: {excludeKeys: ["italic"]
}

斜体就不在工具栏展现了

六、将菜单弹出的 modal 添加到 body 下

toolbarConfig: {modalAppendToBody: true
}

写在最后

如果你感觉文章不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※!!!


http://www.ppmy.cn/news/651684.html

相关文章

wangeditor富文本编辑器的使用

官方文档: http://www.wangeditor.com/ 1. 引入编辑器 npm install wangeditor 2. 使用编辑器 (1) 创建容器 <div id"wangeditor"><div ref"editorElem"></div> </div>(2) 创建并且实例化组件 vue的使用方法 //vue的使用 im…

Vue3 富文本编辑器插件wangEditor

先上Demo 最近笔者在Vue3开发过程中需要使用到富文本编辑器&#xff0c;最后找到这个插件&#xff0c;觉得挺不错&#xff0c;如果有开发者也有这样的需求&#xff0c;可以试试 先上demo: Vue3使用方法 安装 yarn add wangeditor/editor # 或者 npm install wangeditor/edi…

wangEditor的完整使用(二)

上一篇博客讲了wangEditor的使用&#xff0c;但是有一个问题就是在富文 本编辑器里编辑时不能看到文章的预览效果。 下面我来讲解下如何实现在编辑时也可以看到预览效果。 设置一个按钮 <div class"layui-inline layui-show-xs-block"><button type&quo…

wangEditor 富文本编辑器使用

wangEditor 富文本编辑器使用 框架&#xff1a; react hooks 链接: 官方文档参考 富文本编辑器组件 import wangeditor/editor/dist/css/style.css; // 引入 css import { useState, useEffect } from react; import { Editor, Toolbar } from wangeditor/editor-for-react;…

vue 中使用 wangeditor

项目中用到了富文本&#xff0c;选来选去选择了wangeditor,先写了demo&#xff0c;用起来还算比较简单 用法 安装 npm install wangeditor/editor --save npm install wangeditor/editor-for-vue --save 空白编辑器 <template><div id"app"><div…

wangEditor的使用及上传图片(一)

由于业务需要&#xff0c;最近新入手了一款富文本编辑器wangEditor&#xff0c;这是一款轻量级的富文本编辑器&#xff0c;比起百度的ueditor&#xff0c;这款编辑器的界面更加简单&#xff0c;文档也很详细。对于需求不是很高的功能来说&#xff0c;这款编辑器实在是不二之选。…

wangEditor的完整使用(一)

最近在做一个类似博客之类的页面&#xff0c;所以就打算借助wangEditor这一富文本编辑器来实现项目的需求。主要使用SpringBootJSPLayUi来完成。一.导入wangEditor.js 我自己使用的是wangEditor.min.js,通过手工导入的方式放在项目的静态文件下来引用。 下载地址&#xff1a;…

对wangeditor进行扩展---- 源代码

看到有人对我做的WangEditor比较感兴趣&#xff0c;问了一些问题。但由于我并不常来&#xff0c;所以就没能及时答复&#xff0c;抱歉了。 未避免以后类似问题发生&#xff0c;我将我修改的wangeditor.js直接发在这里&#xff0c;有兴趣的可以下载后自己分析。希望能帮到需要的…