如何使用JavaScript/jQuery在CkEditor5中动态创建html代码段?
我正在将当前正在使用Redactor和jQuery的自定义应用程序转换为CkEditor,v5。它通常可以工作,但我们有一个功能,可以生成一些HTML,然后将其插入编辑器中。对于旧的编辑器,这很好,但是对于CkEditor,我认为我需要在新的HTML片段中插入HTML。我可以用class=raw html embed将html包装在一个div中,这是代码段插件通常生成的内容,但CkEditor不将其识别为新代码段,它只是作为文本插入如何使用JavaScript/jQuery在CkEditor5中动态创建html代码段?,jquery,plugins,ckeditor5,Jquery,Plugins,Ckeditor5,我正在将当前正在使用Redactor和jQuery的自定义应用程序转换为CkEditor,v5。它通常可以工作,但我们有一个功能,可以生成一些HTML,然后将其插入编辑器中。对于旧的编辑器,这很好,但是对于CkEditor,我认为我需要在新的HTML片段中插入HTML。我可以用class=raw html embed将html包装在一个div中,这是代码段插件通常生成的内容,但CkEditor不将其识别为新代码段,它只是作为文本插入 是否有API调用或其他过程允许be触发新HTML代码段的创建?
是否有API调用或其他过程允许be触发新HTML代码段的创建?我最终查看了剪贴板源代码,并找到了它。只需将字符串转换为视图元素,然后转换为模型片段,然后插入。文档中的一个简单示例会有所帮助!如果这不是最好的方法,请留下评论
ckeditor.model.change(writer => {
const clipboard = ckeditor.plugins.get('Clipboard');
const view = clipboard._htmlDataProcessor.toView(newText);
const modelFragment = ckeditor.data.toModel(view, '$clipboardHolder');
if (modelFragment.childCount === 0) {
return;
}
ckeditor.model.insertContent(modelFragment);
});