当前位置:首页 > 每日看点

语雀什么时候开源@语雀?

卡卷网1年前 (2025-04-19)每日看点366

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

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

安装

npm i yuque-rich-text

截图

语雀什么时候开源@语雀?  第1张

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].

ef="zhihu.com/question/5721">Read [yuque.com]'s Terms of Service before installation.

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/04/12707.html

分享给朋友:

相关文章

个人站长为什么越来越少了?个人网站还能做吗?

个人站长为什么越来越少了?个人网站还能做吗?

在互联网快速发展的浪潮中,个人站长曾经有过辉煌的时代,但如今却面临着诸多困境,甚至走向 “死亡”。…

4499 元起的荣耀Magic7 系列实际使用体验怎么样,值得入手吗?

全是软文。。。。。。不过我买了,标准版。为什么买荣耀:屏幕看着舒服,玩游戏选择大屏,超声波指纹解锁。其它,系统、续航、充电、拍照,不是最强,但均衡下来短板都不是很短。其它米OV,IQ、一加,都看了,预算有限,米OV的小屏不感兴趣,OPPO硬…

如何做电商行业?

如何做电商行业?

“如何做电商*开网店”跟“如何找老婆”一样,没概况条件、没明确标准,就是扯犊子。 我把话题具体一点说: 具备“两三万”启动资金、掌握“选品+上架优化”基础技能,小则月入三五千、多则上万。跟摆地摊一样,有进货的钱、也不怕苦不怕累、稍微有点生意…

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法. 栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型…

为什么 lnx 求导是 1/x?

为什么 lnx 求导是 1/x?

其实,我想对题主说,你提的问题一点都不弱智。恰恰相反,这是个非常有意义的问题。我们学习一门知识,尤其是数学知识,要知其然,更要知其所以然。今天,我尝试从 “如何去定义“的角度出发来解释这个问题,不玩公式推导的符号游戏。希望能带来新的启发。为…

本专业是电气的,请问入门plc 必须要从电工接线开始吗,我怕被公司骗了,想请教各位?

本专业是电气的,请问入门plc 必须要从电工接线开始吗,我怕被公司骗了,想请教各位?

开关接线图 PART 01一开单控开关接线图 二三开连体单控开关接线图 四开连体单控开关接线图 一开五孔单控插座接线图 二开五孔单控插座接线图 一开双控开关接线图 二三开单控开关接线图 四开单控开关接线图 一…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。