9

我已经列出了 CKEditor 5 内联编辑器的所有可用工具栏项目,我想知道为什么缺少一些基本项目。我正在使用https://cdn.ckeditor.com/ckeditor5/1.0.0-beta.1/inline/ckeditor.js上的构建,文档说它应该包括整个功能集。

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

  • 撤消
  • 重做
  • 胆大
  • 斜体
  • 块引用
  • 图像文本替代
  • 图片上传
  • 标题
  • 图像样式:完整
  • 图像样式:侧面
  • 关联
  • 编号列表
  • 项目符号列表

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

  • 复制
  • 粘贴
  • 强调
  • 字体大小
  • 文字颜色
  • 左对齐
  • 正当理由
  • 对齐中心

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

4

1 回答 1

6

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

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

虽然它应该这样说:

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

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

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

为什么不在所有版本中包含所有功能?

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

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

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

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

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

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

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

于 2018-03-23T14:39:04.190 回答