angular - 无法找到将数据传递给 CKEditor 5 插件的方法
问题描述
我正在开发一个插件,当用户从给定的光标位置按 Enter 键时,它会从光标右侧复制内容,然后将其删除。
我目前遇到的问题是,当我在核心应用程序中启动编辑器时,我找不到将数据传递给插件的方法。
这是我正在试验的插件代码:
export default class CopyOnEnter extends Plugin {
init() {
const editor = this.editor;
editor.editing.view.document.on("keydown", (evt, data) => {
if (data.keyCode === 13 && passedDataToPlugin === "something") {
const pos = editor.model.document.selection.getFirstPosition();
const posEnd = Position._createAt(pos.root, "end");
const rangeAfter = new Range(pos, posEnd);
const fragAfter = editor.model.getSelectedContent(
new Selection([rangeAfter])
);
const dataAfterEnterKey = editor.data.stringify(fragAfter);
editor.model.deleteContent(new Selection([rangeAfter]));
console.log("dataAfterEnterKey", dataAfterEnterKey);
}
});
}
}
我目前正在研究命令的使用,但我仍然无法理解这些。
最坏的情况我将使用本地存储来传递数据,这不是给定问题 IMO 的最佳解决方案。
帮助将不胜感激。
解决方案
推荐阅读
- python - 同时运行main函数和receive函数
- python - Udacity - 烧瓶 Python
- swift - SwiftUI List 和 For Each 循环与空白元素
- javascript - 上传包含子文件夹的文件夹并保留它们?
- r - R Forecast 'ts' 对象必须有一个或多个观测值
- graphql - 如何根据某个对象的 id 过滤订阅事件?
- flutter - DatabaseException(没有这样的表:values11(代码1):
- typescript - 如何在打字稿中的类型 [value, error] 元组中获得正确的推断
- python - 我在使用 lxml.etree.HTML 时有一个奇怪的行为
- csv - 将错误从 Azure Devops 提取到带有时间戳的状态变化的 CSV