Meta 开源可扩展的文本编辑器框架 Lexical

Meta(前 Facebook)近日在 GitHub 上开源了一个名为 Lexical 的项目,该项目是一个基于 JavaScript 的 Web 文本编辑器框架,具有可扩展、可访问和高性能的特性。M

Meta(前 Facebook)近日在 GitHub 上开源了一个名为 Lexical 的项目,该项目是一个基于 JavaScript 的 Web 文本编辑器框架,具有可扩展、可访问和高性能的特性。Meta 在介绍中表示,结合 Lexical 高度可扩展的架构,开发者可以构建在大小和功能上均可以扩展的独特文本编辑器。

Lexical 的核心是一个文本编辑引擎 —— 一个为网络建立功能丰富的编辑器的平台。为了避免用户在每一个实现中重复编写相同的富文本功能,Lexical 还公开了一组单独的、模块化的包,诸如用户界面组件、工具栏、富文本功能和标记等功能都可以通过这些包来实现和扩展。

Lexical 的底层引擎主要由三个部分组成:

  • 编辑器实例,每个实例都附加到一个可编辑的内容元素上。
  • 一组编辑器状态,代表编辑器在任何特定时间的当前和待定状态。
  • 一个 DOM 调节器,它接收一组编辑器状态,对变化进行差异化处理,并根据其状态更新 DOM。

在设计上,Lexical 的核心是尽可能的简化。以 UI 组件、工具栏、富文本和 Markdown 这些功能为例,它们在逻辑上可以通过一个插件接口包含进来,并在需要的时候使用。这确保了极大的可扩展性,并将代码大小保持在最低水平。

浏览器兼容性:

  • Firefox 52+
  • Chrome 49+
  • Edge 79+(Chromium)
  • Safari 11+
  • iOS 11+ (Safari)
  • iPadOS 13+ (Safari)
  • Android Chrome 72+

注意:Lexical 不支持 Internet Explorer 或旧版本的 Edge 浏览器。Lexical 目前正处于早期开发阶段,API 和包可能会发生变化。

关于作者: qwephp

.

为您推荐