2016-01-02 50 views
1

我的需求是當作者將組件從側面板拖到解析器上時刷新頁面。組件僅在頁面刷新後才顯示編輯工具欄。這只是在觸摸ui中的問題,因爲經典的editConfig總是在頁面上顯示編輯欄。作者在側面面板拖動組件時如何隱藏頁面刷新操作?如何在從AEM6.1的側面板拖動組件時刷新頁面?

+0

不知道我是否正確理解你。你想刷新頁面嗎?'拖'或'拖放'後。如果後者你嘗試在你的editConfig中添加'afterinsert =「REFRESH_PAGE」'? – awd

+0

cq:editConfigs通常不會在觸摸UI中工作。我不確定這是否是預期的。 –

+0

是的。 _雖然具有某些特定的區別,但配置對於觸摸優化和經典UI都很常見。請參閱 - https://docs.adobe.com/docs/en/aem/6-1/develop/components/components-basics.html#Edit%20Behavior – awd

回答

1

經過一番調查後,我發現它的工作原理。

  • cq:editConfigs和cq:EditListenersConfig不適用於觸摸ui。即使在添加afterInsert =「REFRESH_PAGE」後,頁面刷新也不會發生。
  • 當拖動&降行動在觸摸界面發生時執行的Java腳本是:

    /libs/cq/gui/components/authoring/clientlibs/editor/js/edit/edit.actions.js 
    
  • 所以我創建了一個覆蓋,基本上覆制了JS到我的應用程序客戶端庫和自以下條件添加.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不在觸摸UI中工作。

+0

這是刷新解析/頁面的方法。如果所有組件都滿足條件,則必須保持添加。這應該有另一個工作。 –