在CKEditor5中更改视图架构的优雅方法

时间:2018-12-22 21:12:07

标签: ckeditor ckeditor5

我正在寻找一种更改CKE5使用的视图架构/标签的方法,同时尝试不重新实现所有功能。因此,基本上,问题是在编辑器中将<strong>元素更改为<b>的最佳方法是什么。

我当前的解决方案是更改*editing.js文件,并将基本插件文件更改为包括修改后的Editing插件,而不是原始的。效果很好,但是,我想知道是否有一种方法可以减少完成此任务所需的代码行数。

所以我的解决方案当前如下所示:

newbold.js

static get requires() {
    return [ NewBoldEditing, BoldUI ];
}

newboldediting.js

editor.conversion.attributeToElement({
    model: 'bold',
    view: 'b'
});

是否有更好的方法(最好不涉及重新实现这么多的类)?

1 个答案:

答案 0 :(得分:1)

您只能提供一个非常简单的插件来覆盖默认的bold属性转换。

class BoldToB extends Plugin {
    init() {
        this.editor.conversion.attributeToElement( {
            model: 'bold',
            view: 'b',
            converterPriority: 'high'
        } );
    }
}

以下是供您测试的小提琴:https://jsfiddle.net/u3zyw67v/

请注意,在小提琴中,我无权访问Plugin类,因此我不得不添加constructor()。如果您扩展Plugin类,则无需这样做。