当作者将组件从侧面板拖到parsys上时,我需要刷新页面。该组件仅在页面刷新后显示编辑工具栏。这只是触摸界面中的问题,因为经典的editConfig总是在页面上显示编辑栏。当作者从侧面板拖动组件时,我如何偷偷执行页面刷新操作?
经过一番调查,以下是我的发现,它是有效的。
- cq:editConfigs和cq:EditListenersConfig不适用于touch ui。即使在添加afterInsert="REFRESH_PAGE"之后,页面刷新也不会发生
-
当拖动&触摸界面中发生的跌落动作是:
/libs/cq/gui/components/authoring/clientlibs/editor/js/edit/edit.actions.js
-
所以我创建了一个覆盖,基本上将js复制到我的应用程序客户端库中,并在self.doInsert()函数中添加了以下条件:
self.doInsert = function (component, insertBehavior, editableNeighbor, historyConfig, additionalData) { if(component.componentConfig.path == '/apps/sample/components/media/rich-media' || component.componentConfig.path == '/apps/sample/components/media/tiled-display') { window.location.reload(); }
-
现在,作者拖动组件后,页面正在刷新。
请让我知道这是否是一种明智的方式,以及为什么cq:EditListenersConfig不能在touch ui中工作。