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

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

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

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

分享给朋友:

相关文章

内存和硬盘的单位都是G,两者的功能是什么?谁能用简单通俗的方式来解读一下?

内存和硬盘的单位都是G,两者的功能是什么?谁能用简单通俗的方式来解读一下?

要弄清楚这个问题,首先要弄清楚什么是内存,什么是硬盘,在计算机的组成结构中有一个很重要的部分是存储器。它是用来存储程序和数据的部件。对于计算机来说,有了存储器,才有记忆功能,,才能保证正常工作。存储器的种类很多。按其用途可分为主存储器与辅助…

如何评价小米14pro顶配可以选配卫星通话,小米15全系都无法选配?

如何评价小米14pro顶配可以选配卫星通话,小米15全系都无法选配?

雷总不是说了吗,我可以不用,但你不能没有。市面上OPPO Find X8 Pro和vivo X200 Pro的卫星通信版分别加价300,而荣耀Magic7和Magic7 Pro有卫星通信版且不加价,荣耀更显诚意。 我觉得有是更好的,虽然使用…

在 Kubernetes 中,Service 的实现原理是什么,它是如何实现服务发现的?

行,问的这个问题挺有意思,Kubernetes 里 Service 是怎么实现的,服务发现是怎么回事,咱就直说了。这事儿看起来挺玄乎,但掰开揉碎了讲,也就那么回事。你得把这事儿想得简单点,别一上来就被啥术语吓住了——其实全是些搬砖的套路。…

你见过哪些有趣的偏微分方程组?

你见过哪些有趣的偏微分方程组?

说说我一直在做的一个偏微分方程系统吧,该模型为生物领域的趋化性(chemotaxis)模型,也叫Keller-Segel模型,由该二人于1971年左右提出,用于刻画细胞或者细菌的趋化机制。解释一下趋化性(chemotaxis):趋化性是指单…

微信占用存储空间很大,如何解决?

微信占用存储空间很大,如何解决?

微信用久了,越来越占内存怎么办?确实如此,微信使用时间久了,如果不定期清理数据的话,就会占用特别多的内存,几G甚至几十G。你是不是也正在为这种事情而头痛?碰到这种情况,除了卸载重装微信以外,我们可以通过下面几种方法来释放内存。 方法一:…

为什么程序员们愿意在GitHub上开源自己的成果给别人免费使用和学习?

开源可以垄断。 人类最高的权力不是什么国家而是意识形态,能够控制别人的思维方式。你把你的东西开源出来了,其他人就会懒于思考,在这一个思考上使用你的方式。 比如容器编排,经过了K8s后谁还会去开发那些奇奇怪怪的编排手段,直接用不就行了。形成了…

发表评论

访客

看不清,换一张

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