Bendi新闻
>
开源富文本编辑器Quill 2.0重磅发布

开源富文本编辑器Quill 2.0重磅发布

7月前
⬆️ 武汉源创会火热报名中
开源富文本编辑器 Quill 正式发布 2.0 版本。


官方 TypeScript 声明

Quill 的源代码已完全过渡到 TypeScript,优势在于早期错误检测、改进的可维护性和更好的工具支持。

以往,开发人员必须 @types/quill 作为单独的包安装才能获取 TypeScript 定义。Quill 2.0 中,可以直接从源头获得类型声明。

多注册表

博客项目可能使用 Quill 为帖子本身提供全功能的编辑界面,包括标题、图像和代码块,而在同一页面上,Quill 还支持粗体、斜体的评论输入,以及支持的链接格式。

Quill 2.0 的新 registry 功能支持此用例,允许具有自己样式配置的多个编辑器在同一页面上共存,而不会发生任何冲突。

自动滚动容器检测

以往开发人员在创建 Quill 实例时需要指定编辑器的滚动容器,以便用户的光标或选择可以在需要时滚动到视图中。但这一配置经常被忽视或混淆,滚动容器要么被错误指定,要么根本没有指定。

此外,在较大的应用和代码库中,为可能出现在不同上下文中的可重用编辑器组件找到正确的滚动容器并不总是那么容易。

2.0 中,Quill 会自动找到正确的滚动容器,这使得使用 Quill 处理较长格式的文本变得更加容易,并支持更复杂的交互,例如自由嵌套滚动容器和水平滚动。

使用 InputEvent

Quill 的主要优势之一是内部管理的文档模型,它不依赖 DOM 作为单一事实来源。这为富文本状态提供了更接近开发人员心智模型的映射,并支持更简单的文本编辑 API。

Quill 通过监听 DOM 更改并将其标准化回其内部文档模型来实现此目的。但是,浏览器可能会不一致或错误地处理用户的操作,从而导致生成错误的 DOM 更改。例如,当用户选择红色文本并通过键入替换它时,浏览器有时会将其替换为属性 font 中包含红色的元素 style,即使编辑器使用 span 元素来表示颜色也是如此。

Quill 2.0 中,使用现代且常见的浏览器功能来触发 InputEvent。现在,首先捕获用户的操作以更新内部文档模型,然后再将结果更改同步到 DOM。这种方法提供了更加一致和可靠的编辑体验,尤其是对于复杂的内容和格式。

该功能目前专注于文本替换交互中最有问题的来源,并计划在未来更广泛地使用。

以下是 2.0 主要更新信息罗列:

重大改进

  • Quill 现在是一个有效的 ESM 包,以便更好地支持生态系统(例如,打包器)和树摇(tree-shaking)功能

  • 支持嵌套 Quill

  • 改进了输入法(IME)和拼写校正器的支持

  • 对 TEXT_CHANGE 事件进行了语义清理

  • 历史记录:在历史模块中记录选择

  • 自动检测滚动容器

  • 剪贴板:改进了从 Google Docs 和 Microsoft Word 粘贴的支持

性能提升

  • Quill 2.0 包含许多性能优化,其中最重要的是提高了渲染大量内容的速度。

  • 提升插入性能

  • 尽可能避免获取选择集

  • 当容器为空时无需 setContents

代码现代化

  • 迁移到 TypeScript

  • 提供了官方 TypeScript 声明

  • 迁移到 Vitest 进行单元测试

  • 迁移到 Playwright 进行端到端测试

  • 将网站迁移到 Gatsby

详情查看官宣,以及 2.0 迁移指南:

  • https://slab.com/blog/announcing-quill-2-0

  • https://github.com/quilljs/quill/releases/tag/v2.0.0

  • https://quilljs.com/guides/upgrading-to-2-0


BTW, Quill 2.0 核心开发者是 Zihua Li,这是他首个全职参与的开源项目。


延伸阅读:

中国程序员独立开发9年、最受欢迎的开源Redis客户端——被Redis公司收购


热门文章

德国政府“又”从Windows迁移到Linux

开源副屏「操作系统」底层采用Electron,是生产力工具还是美丽的废物?

神级程序员Fabrice Bellard发布音频压缩工具TSAC

JetBrains全家桶2024首个大版本更新

从C++切换到Rust,开发效率提升两倍不止

⬇️ 长按二维码,启动!

微信扫码关注该文公众号作者

来源:OSC开源社区

相关新闻

阿里云重磅发布开源模型Qwen2,性能超Llama3-70及国内众多闭源模型Rust 语言编写,Linux 版开源 Zed 编辑器发布:支持 GPU 加速比VS Code快得多!用Rust重写,支持OpenAI、Copilot 的Zed编辑器开源了重磅!Mistral Large 2深夜发布!Llama3.1仅一天被超越,最强开源再易主MeshAnything V2重磅开源!30秒生成建模师级的3D Mesh!AI成功改写人类DNA:全球首个基因编辑器开源;浙江大学首次实现汉字书写脑机接口,“意念写字”成现实丨AIGC日报Stable Video 3D重磅开源!3D生成迎来新突破!Rust 编写的 Zed 编辑器开源:约 27 万行代码、主打“高性能”Rust编写的Zed编辑器开源:约27万行代码、主打“高性能”开源代码编辑器Zed“不讲武德”——偷偷下载软件包,害我损失了十几兆流量AI成功改写人类DNA,全球首个基因编辑器震撼开源!近5倍蛋白质宇宙LLM全生成谷歌、OpenAI 都搞起了AI “造人”?创始团队:开源AI基因编辑器只是冰山一角史上首个100%开源大模型重磅登场!破纪录公开代码/权重/数据集/训练全过程,AMD都能训开源音频编辑器 Audacity 的 AI 工具来了 | Linux 中国极客与技术,产业与生态,100+重磅嘉宾,2024全球开源技术峰会GOTC即将开幕30+参展企业,2024全球开源技术峰会GOTC x GOGC全球开源极客嘉年华即将重磅开启AI大佬重磅预测:高阶模型不会开源,软件公司或消失,「单飞」创业者春天来了天工2.0 MoE大模型发布;苹果开源自动修图神器MGIE;香港公司被AI换脸骗走2亿港元丨AIGC大事日报超越OpenAI,谷歌重磅发布从大模型蒸馏的编码器Gecko15.5k Star,开源在线实时协作文档编辑器苹果春季发布会被曝取消!八大重磅新品本周开卖,AI 大招6月见重磅发布:日观芯设IC设计全流程管理软件RigorFlow 2.0Meta「分割一切」进化2.0!一键跟踪运动物体,代码权重数据集全开源,网友:真正的OpenAI心源性休克首个阳性RCT试验结果发布,微型轴流泵降低梗死相关心源性休克患者全因死亡率 | ACC重磅研究
logo
联系我们隐私协议©2024 bendi.news
Bendi新闻
Bendi.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Bendi.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。