ckeditor - CKEditor 5 保存选定的文本并在恢复内容后再次将其设置为选定
问题描述
我一直在使用 CKEditor 5:
var mySelection = editor.getSelection();
例如,获取选定的文本并能够将其保存到数据库中。我想知道是否有一种更简单的方法可以将选定的文本保存到数据库中,然后在恢复文本后将其设置为在编辑器窗口中自动选择。
一种在同一文本中保存选择并再次设置选择的简单方法。有插件之类的吗?
问候
解决方案
这是获取所选内容的方法。您应该像以前一样获得选择,从中获取范围(
.getFirstRange()
),用于for ( const item of range.getItems() )
遍历范围中的所有项目,检查项目是否为文本节点(item.is( 'textProxy' )
),如果是,将其数据添加到结果中(result = result + item.data
)。这样您就可以获得选择中的文本。要恢复部分内容的某些内容,您必须将模型范围保存在数据库中,然后恢复它并对其进行处理。没关系,但您需要保证内容不会在保存范围和内容之间发生变化(因此范围不会过时)。
我不确定您要实现什么功能,但看起来您可以使用标记
推荐阅读
- cvxpy - 目标不是 DCP。它的下列子表达式不是
- node.js - AWS Lambda | 从 S3 读取多个文件 | 创建组合 JSON | 面临性能问题
- javascript - 如何从包含日期范围的字符串中提取年份 [Typescript/Angular]
- swift - 如何在 iOS 13 上共享文本和 URL 到提醒事项
- excel - Excel 多级数组公式与部分字符串匹配以求和结果单元格
- mongodb - 基于ObjectID的Mongodb Aggregation中的查询问题
- reactjs - React 函数的返回类型是什么
- ios - 提交到 AppStore Connect 时不支持 iOS 13
- angular - Angular 8后退按钮和参数
- python - Python 访问从导入的函数返回元组