Meta 开源可扩展的文本编辑器框架 Lexical
Meta(前 Facebook)近日在 GitHub 上开源了一个名为 Lexical 的项目,该项目是一个基于 JavaScript 的 Web 文本编辑器框架,具有可扩展、可访问和高性能的特性。Meta 在介绍中表示,结合 Lexical 高度可扩展的架构,开发者可以构建在大小和功能上均可以扩展的独特文本编辑器。 Lexical 的核心是一个文本编辑引擎 —— 一个为网络建立功能丰富的编辑器的平台。为了避免用户在每一个实现中重复编写相同的富文本功能,Lexical 还公开了一组单独的、模块化的包,诸如用户界面组件、工具栏、富文本功能和标记等功能都可以通过这些包来实现和扩展。 Lexical 的底层引擎主要由三个部分组成: 编辑器实例,每个实例都附加到一个可编辑的内容元素上。 一组编辑器状态,代表编辑器在任何特定时间的当前和待定状态。 一个 DOM 调节器,它接收一组编辑器状态,对变化进行差异化处理,并根据其状态更新 DOM。 在设计上,Lexical 的核心是尽可能的简化。以 UI 组件、工具栏、富文本和 Markdown 这些功能为例,它们在逻辑上可以通过一个插件接口包含进来,并...
