Yuque Rich Text(语雀富文本编辑器)

由于本人觉得语雀编辑器非常好用,很符合我的使用习惯,然后发现语雀的Chrome浏览器插件实现了编辑器的功能,所以将其富文本的功能拆分位一个单独的Vue3组件。

安装

npm i yuque-rich-text

截图

Props


export interface EditorProps {
value: string; // 传递给组件的内容
children?: any;
isview?: boolean; // 预览模式,用于在客户端页面展示结果。
uploadImage?: (params: { data: string | File }) => Promise<{
url: string;
size: number;
filename: string;
}>;
uploadVideo?: (params: { data: string | File }) => Promise<{
url: string;
size: number;
filename: string;
}>;
}

Emit

export interface EditorEmits{
onChange?: (value: string) => void;
onLoad?: () => void;
onSave?: () => void;
}

Expose

export interface IEditorRef {
/**
* 追加html到文档
* @param html html内容
* @param breakLine 是否前置一个换行符
*/
appendContent: (html: string, breakLine?: boolean) => void;
/**
* 设置文档内容,将清空旧的内容
* @param html html内容
*/
setContent: (content: string, type?: "text/lake" | "text/html") => void;
/**
* 获取文档内容
* @param type 内容的格式
* @return 文档内容
*/
getContent: (type: "lake" | "text/html") => Promise<string>;
/**
* 判断当前文档是否是空文档
* @return true表示当前是空文档
*/
isEmpty: () => boolean; /**
* 获取额外信息
* @return
*/
getSummaryContent: () => string; /**
* 统计字数
* @return
*/
wordCount: () => number; /**
* 聚焦到文档开头
* @param {number} offset 偏移多少个段落,可以将选区落到开头的第offset个段落上, 默认是0
* @return
*/
focusToStart: (offset?: number) => void; /**
* 插入换行符
* @return
*/
insertBreakLine: () => void;
}

使用编辑器

使用非常简单,只需import组件即可

注意不可在onChange事件中修改value的值,否则会进入无限递归。

<template>
<YuqueRichText ref="editRef" :value="modelValue"/>
</template> <script setup lang="ts">
import { ref, watch, PropType } from "vue";
import { YuqueRichText } from "yuque-rich-text"; const editRef = ref<InstanceType<typeof YuqueRichText>>();
const modelValue = ref("hello yuque richtext");
</script>

️ Disclaimer

This is an unofficial third-party extension for [www.yuque.com]. It is not affiliated with, maintained by, or endorsed by [www.yuque.com].

  • Use at your own risk. The developers are not responsible for any violations of [www.yuque.com]'s terms or damages caused by this project.
  • Do not use if [www.yuque.com] prohibits third-party modifications.
  • This project does not redistribute any copyrighted materials from [www.yuque.com].

Yuque Rich Text(语雀富文本编辑器)的更多相关文章

  1. N个富文本编辑器/基于Web的HTML编辑器

    转自:http://www.cnblogs.com/lingyuan/archive/2010/11/15/1877447.html 基于WEB的HTML 编辑器,WYSIWYG所见即所得的编辑器,或 ...

  2. wangEditor-基于javascript和css开发的 Web富文本编辑器, 轻量、简洁、易用、开源免费(2)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 百度ueditor富文本编辑器的使用

    百度ueditor富文本编辑器的使用 //以下为我在官网下载的ueditor v1.3.5 php版的大楷配置步骤第一步: //配置文件的引入应该比功能文件先引入,最后设置语言类型.即:editor. ...

  4. Html富文本编辑器

    本文推荐两款简单的富文本编辑器[KindEditor,NicEdit]用于获得所见即所得的编辑效果,本文仅供学习分享使用,如有不足之处,还请指正. 概述 这两款编辑器都是采用JavaScript编写, ...

  5. 10个免费的javascript富文本编辑器(jQuery and non-jQuery)

    祝愿园子里的朋友圣诞节快乐. 本文介绍了10个免费易用富文本编辑器(rich text editors,RTE),其中5个是Jquery插件,另外5个是非Jquery富文本编辑器 简介 Javascr ...

  6. python 全栈开发,Day83(博客系统子评论,后台管理,富文本编辑器kindeditor,bs4模块)

    一.子评论 必须点击回复,才是子评论!否则是根评论点击回复之后,定位到输入框,同时加入@评论者的用户名 定位输入框 focus focus:获取对象焦点触发事件 先做样式.点击回复之后,定位到输入框, ...

  7. 富文本编辑器TinyMCE

    最近项目中用到了javascript富文本编辑器,从网上找开源控件,发现很多可选,参考下面文章,列出了很多可用的插件http://www.cnblogs.com/ywqu/archive/2009/1 ...

  8. Qt富文本编辑器QTextDocument

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt富文本编辑器QTextDocument     本文地址:https://www.tech ...

  9. 【重点突破】—— React实现富文本编辑器

    前言:富文本编辑器Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器.   一.安装插件 react-draft-wysiwyg: 文本编辑器插件 dra ...

  10. Watir: Watir-WebDriver对富文本编辑器的定位于Watir是不一致的。

    Watir对富文本编辑,一般可以采用b.frame().document.body.innerText = "Value you want to insert"但是Watir-We ...

随机推荐

  1. uni-app中picker-view显示默认值的注意点(坑)

    今天我在使用picker-view的时候,发现无法给picker-view给一个默认值:后面经过发现后: 才知道到,是一个异步问题: 1==>动态循环出来的数据,在data中直接循环,不要在re ...

  2. 从DNS配置到Pacemaker部署:一步步教你在Linux平台上实现AlwaysOn集群

    从DNS配置到Pacemaker部署:一步步教你在Linux平台上实现AlwaysOn集群 AlwaysOn集群是SQL Server里唯一推荐的高可用性架构, 在AlwaysOn高可用性架构中,有非 ...

  3. NOIp 2024 考试策略

    无论简不简单,都要在前 30min 浏览所有题面,思考哪题可做.哪题不可做,思考能打哪些部分分,9:00 再开始写 T1. 题目简单时 9:00 开写后,30min 以内切完 T1. 9:30 开 T ...

  4. LangChain基础篇 (05)

    LangChain 核心模块:Data Conneciton - Document Transformers 一旦加载了文档,通常会希望对其进行转换以更好地适应您的应用程序. 最简单的例子是,您可能希 ...

  5. C#字符串拼接的6种方式及其性能分析对比

    前言 在C#编程中字符串拼接是一种常见且基础的操作,广泛应用于各种场景,如动态生成SQL查询.构建日志信息.格式化用户显示内容等.然而,不同的字符串拼接方式在性能和内存使用上可能存在显著差异.今天咱们 ...

  6. ESP32-S3-WROOM-1-N16R8

    ESP32-S3-WROOM-1-N16R8 基于立创实战派S3 参考链接:实战派开发板S3介绍 | 立创开发板技术文档中心 硬件和代码,(大部分图片)基于立创文档,在此基础上进行个人的学习记录和理解 ...

  7. 【COM3D2Mod 制作教程(7)】实战!制作衣服部分(上)

    [COM3D2Mod 制作教程(7)]实战!制作衣服部分(上) 教程介绍 隔了 N 个月终于迎来了第二期的 Mod 教程部分,这一期我们将开始制作人物的衣服部分. 因为体型适配的原因,衣服部分要比身体 ...

  8. 什么是极限编程 (XP)?

    极限编程(XP) 是2000 年代初期最广为人知和使用最多的敏捷方法之一.XP 是Kent Beck.Ron Jeffries和Ward Cunningham的创意,基于他们在戴姆勒克莱斯勒的集体经验 ...

  9. php查询结果汉字乱码解决方法

    问题描述:使用php查询数据显示,显示的结果中所有汉字乱码 问题及解决:这种情况是编码造成的,检查数据库及页面编码是否一致,也可在页面增加: header('Content-Type:text/htm ...

  10. 【数学公式】mathtype和word2016集成

    mathtype 安装好了以后,word 没有相应的选项卡怎么办? 问题 解决办法 找到word的启动路径 2. 找到mathtype 安装好后的mathpage文件夹 进入文件夹,找到MathPag ...