CKEditor 5缺少可用的工具栏项

Dan*_*ous 5 javascript ckeditor ckeditor5

我列出了CKEditor 5内联编辑器的所有可用工具栏项目,并且我想知道为什么缺少一些基本项目。我正在使用https://cdn.ckeditor.com/ckeditor5/1.0.0-beta.1/inline/ckeditor.js上的版本,文档说其中应包括全部功能。

editor.ui.componentFactory.names()输出:

  • 撤消
  • 重做
  • 胆大
  • 斜体
  • blockQuote
  • imageTextAlternative
  • imageUpload
  • 标题
  • imageStyle:完整
  • imageStyle:side
  • 链接
  • 编号清单
  • 项目符号列表

如您所见,CKEditor 4中包含的一些核心项丢失了,例如:

  • 复制
  • 强调
  • 字体大小
  • textColor
  • justifyLeft
  • 证明权利
  • 证明中心

为什么这些物品不见了?是因为CKEditor 5仍处于测试版吗?

Rei*_*mar 5

哎呀!文档不正确。本指南是这样说的:

由于 CKEditor 构建已启用所有功能,因此向它们添加更多功能的唯一方法是创建自定义构建。

虽然它应该这样说:

由于 CKEditor 构建不包括所有可能的功能,向它们添加更多功能的唯一方法是创建自定义构建。

此外,你很不幸地发现了这个错误,因为,例如在Builds – Overview指南中,文档说:

如果构建不提供所有必需的功能,或者您想创建一个高度优化的编辑器构建,其中仅包含您需要的功能,则需要自定义构建或创建一个全新的构建。检查自定义构建以获取有关如何更改默认构建以匹配您的偏好的详细信息。

为什么不在所有构建中包含所有功能?

大多数构建(经典内联气球)仅包含编辑器建议中列出的功能(只有一个小例外和一个缺少的功能 - 表格)。我们称这种设置为“文章预设”。

还有文档编辑器构建,它实际上是解耦的编辑器创建者 + 文档预设。文档预设比文章预设宽得多。

那么,为什么不在所有构建中包含所有功能呢?因为这样的构建将是巨大的。这不仅会影响性能(加载时间、执行时间),还会影响用户体验。每个编辑器集成都应根据将要使用的特定环境进行调整。功能集及其配置需要调整为用户应该能够编辑的内容,应该如何制作以及制作什么。仅仅因为可用功能而启用太多功能,不幸的是,大多数开发人员都会这样做,这会导致糟糕的集成、糟糕的用户体验以及此类集成产生的糟糕内容。

因此,我们提出了一些我们认为合理的设置,并略微迫使开发人员思考他们真正需要什么。

在哪里可以找到所有功能?

示例功能列表中。某些功能在任何版本中都不可用,因此它们可能只能在功能列表中找到,而某些功能太常见而无法在功能列表中列出,因为它们在示例中可用。

如果您在任何这些地方都找不到某些功能,那么它可能尚未实现。您可以在现有问题中搜索它或报告一个新问题