AEM中的TouchUI RTE中的多个自定义插件无法正常工作

时间:2016-11-25 13:30:24

标签: javascript jquery aem color-picker rte

我尝试在TouchUI RTE(图片插件和colorpicker插件)中添加两个自定义插件。如果我将一个插件中的任何一个添加到RTE,那可以正常工作,但是当两者兼而有之时,只会出现颜色选择器插件。

插件链接: http://experience-aem.blogspot.com/2015/01/aem-6-sp1-touchui-richtext-editor-color-picker-plugin.html

http://experience-aem.blogspot.com/2015/09/aem-61-touch-ui-rich-text-editor-rte-browse-insert-image.html

我需要RTE中的两个插件,你能建议一个合适的方法吗?

1 个答案:

答案 0 :(得分:2)

组件无法协同工作,因为组件相互重叠:CUI.rte.ui.ToolkitRegistry.register("cui", ExperienceAEM.ToolkitImpl);

实现您的目标:

  • 删除自定义EAEMCuiToolbarBuilder和EAEMDialogManager类,而不是直接扩展CUI.rte.ui.cui.CuiToolbarBuilderCUI.rte.ui.cui.CuiDialogManager,例如CUI.rte.ui.cui.CuiDialogManager = new Class({ extend: CUI.rte.ui.cui.CuiDialogManager, ... });

  • 删除EAEMToolkitImpl类和行CUI.rte.ui.ToolkitRegistry.register("cui", EAEMToolkitImpl);,因为它似乎不再需要

  • 将颜色选择器和图像插入插件放入不同的GROUP名称中,以便在调用CUI.rte.plugins.PluginRegistry.register(GROUP, EAEMColorPickerPlugin);时不会发生碰撞。

  • this.superClass._getUISettings(options)this.superClass.create.call(this, dialogId, config)的来电更改为this.inherited(arguments)

参考:http://experience-aem.blogspot.com.uy/2015/09/aem-61-touch-ui-rich-text-editor-rte-browse-insert-image.html