#1483·ckeditor5

用于 CKEditor 5 的 Web 组件

作者: Reinmar创建于 2019年1月24日更新于 2026年9月14日
标签type:featuresquad:core

让我们将每个构建作为一个 Web 组件发布 * [ ] Shadow DOM 支持 在 Shadow DOM 中关闭编辑器将大大提高其完整性,因为可以对其样式进行作用域限定。但是,这需要做一些更改: * 在引擎中:https://GitHub.com/ckeditor/ckeditor5-engine/issues/692 * 在我们创建元素/节点的所有其他地方? * [ ] 体 UI 集合(https://GitHub.com/ckeditor/ckeditor5/issues/1478) 所谓的“体集合”是我们保存浮动面板的地方(这样它们不会被溢出的父元素修剪,并且更容易定位)。它在 <body> 元素中自动创建。如果我们将 CKEditor 包含在 <ck-editor> 中,则不应从该元素泄露,因此我们需要让开发者对该集合渲染的位置进行一些控制。 * [ ] 命名(<ck-editor><ckeditor-classic> 或 ?) 该名称必须包含 - 字符。此外,一个页面上可能有多个编辑器类型,因此 <ckeditor-*> 看起来很自然。或者不是? * [ ] 是否每个编辑器构建默认情况下都暴露一个 Web 组件? 就算是,也很酷,你可以在导入 @ckeditor/ckeditor5-build-classic 后使用 ClassicEditor.create()<ckeditor-classic>。但是,我不确定组件化 CKEditor 会需要多少额外代码。我希望它不会增加太多最终大小,因为我们将不得不考虑在每个构建中包含两个文件(ckeditor.js 和例如 ckeditor.webcomponent.js)。 * [ ] 如何组件化特定类型的编辑器。对于经典编辑器来说,这相当容易,但对于内联/气泡编辑器以及分离编辑器来说更加复杂。最有可能的是,我们应该尽可能保持与 React/Angular/Vue 组件一致。 * [ ] 如何使编辑器可配置(传递配置对象)。 * [ ] 如何为 Web 组件构建 CSS。这可能会阻碍我们为正常使用和组件使用创建一个构建。

内容来源: ckeditor/ckeditor5