博客
关于我
VUE3(二十六)基于wangeditor自定义富文本插件
阅读量:397 次
发布时间:2019-03-05

本文共 2142 字,大约阅读时间需要 7 分钟。

wangeditor 组件使用指南

安装

安装wangeditor可以通过npm包管理工具完成。请在项目根目录下执行以下命令:

npm install wangeditor --save

组件代码

Wangeditor.vue

Wangeditor.ts

import { onMounted, onBeforeUnmount, ref, watch } from "vue";import WangEditor from "wangeditor";import hljs from "highlight.js";import { webScoketObject } from "@/hooks/common";export default {  name: "Wangeditor",  setup(props: any, content: any) {    const editor = ref();    let instance: any = '';    watch(      () => webScoketObject.is_click_send,      () => {        if (webScoketObject.is_click_send) {          instance.txt.clear();          webScoketObject.is_click_send = false;        }      }    );    onMounted(() => {      instance = new WangEditor(editor.value);      instance.config.languageType = [        "Bash", "C", "C#", "C++", "CSS", "Java", "JavaScript", "JSON",        "TypeScript", "Plain text", "Html", "XML", "SQL", "Go", "Kotlin",        "Lua", "Markdown", "PHP", "Python", "Shell Session", "Ruby", "typescript"      ];      instance.config.menus = [        "emoticon", "image", "code", "splitLine", "undo", "redo"      ];      instance.highlight = hljs;      instance.config.uploadImgServer = "/upload-img";      instance.config.uploadImgAccept = ["jpg", "jpeg", "png", "gif", "bmp"];      instance.config.uploadVideoServer = "/api/upload-video";      instance.config.height = 150;      instance.config.zIndex = 10;      instance.config.placeholder = "请输入您的文字!";      instance.config.colors = [        "#000000", "#eeece0", "#1c487f", "#4d80bf"      ];      instance.config.pasteIgnoreImg = true;      Object.assign(instance.config, {        onchange() {          content.emit("getWangEditorValue", instance.txt.html());        },        linkImgCallback(src: string) {          console.log("图片 src ", src);        },        onlineVideoCallback(video: string) {          console.log("插入视频内容", video);        }      });      instance.create();    });    onBeforeUnmount(() => {      instance.destroy();      instance = null;    });    return { editor };  }};

调用实例

在组件中使用wangeditor可以通过以下方式实现:

最终效果

wangeditor组件提供了一个功能强大的富文本编辑器,支持多种编程语言和格式化样式。通过上述配置,您可以轻松实现文本编辑、代码高亮、图片上传等功能。

转载地址:http://aqhwz.baihongyu.com/

你可能感兴趣的文章
PHP8.1 + ThinkPHP实战指南:高效构建现代化网站的六大技巧
查看>>
PHP8中match新语句的操作方法
查看>>
PHP:第一章——PHP中常量和预定义常量
查看>>
PHP:第一章——PHP中的位运算
查看>>
phpcms
查看>>
phpcms 2008 product.php pagesize参数代码注射漏洞
查看>>
phpcms V9 自定义添加 全局变量{DIY_PATH}方法
查看>>
Redis五种核心数据结构的基本使用与应用场景
查看>>
Redis五种数据结构简介
查看>>
PHPCMS多文件上传和上传数量限制
查看>>
phpEnv的PHP集成环境
查看>>
PHPExcel一些基本设置总结
查看>>
phpexcel中文手册
查看>>
PHPExcel导入导出 若在thinkPHP3.2中使用(无论实例还是静态调用(如new classname或classname::function)都必须加反斜杠,因3.2就命名空间,如/c...
查看>>
phpize及其用法
查看>>
phpMailer发送邮件
查看>>
PHPMailer发送邮件
查看>>
phpmailer发送邮件,可以带附件
查看>>
phpmailer的用法
查看>>
phpMQTT
查看>>