首页 > 解决方案 > CKEditor 5 保存选定的文本并在恢复内容后再次将其设置为选定

问题描述

我一直在使用 CKEditor 5:

var mySelection = editor.getSelection();

例如,获取选定的文本并能够将其保存到数据库中。我想知道是否有一种更简单的方法可以将选定的文本保存到数据库中,然后在恢复文本后将其设置为在编辑器窗口中自动选择。

一种在同一文本中保存选择并再次设置选择的简单方法。有插件之类的吗?

问候

标签: ckeditorckeditor5

解决方案


  1. 这是获取所选内容的方法。您应该像以前一样获得选择,从中获取范围(.getFirstRange()),用于for ( const item of range.getItems() )遍历范围中的所有项目,检查项目是否为文本节点(item.is( 'textProxy' )),如果是,将其数据添加到结果中(result = result + item.data)。这样您就可以获得选择中的文本。

  2. 要恢复部分内容的某些内容,您必须将模型范围保存在数据库中,然后恢复它并对其进行处理。没关系,但您需要保证内容不会在保存范围和内容之间发生变化(因此范围不会过时)。

我不确定您要实现什么功能,但看起来您可以使用标记


推荐阅读