我正在遷移經典的ui對話框以觸摸ui對話框,我遷移了父組件對話框,我觀察到AEM也顯示了父組件對話框的標籤和屬性。在現有的經典ui對話框中,它不會繼承父屬性,而在觸摸ui中它會。如何防止cq:對話框繼承
我們如何通過防止對話框繼承,在觸摸UI中實現相同的經典UI行爲。
如果有人有關於此問題的信息,請分享詳情。
我正在遷移經典的ui對話框以觸摸ui對話框,我遷移了父組件對話框,我觀察到AEM也顯示了父組件對話框的標籤和屬性。在現有的經典ui對話框中,它不會繼承父屬性,而在觸摸ui中它會。如何防止cq:對話框繼承
我們如何通過防止對話框繼承,在觸摸UI中實現相同的經典UI行爲。
如果有人有關於此問題的信息,請分享詳情。
您可以使用sling:hideChildren
屬性來隱藏繼承的選項卡和屬性。例如,假設你想隱藏繼承permissions
和cloudservices
選項卡,並定製basic
和advanced
標籤:
...
<items jcr:primaryType="nt:unstructured">
<tabs
...>
<layout
.../>
<items
jcr:primaryType="nt:unstructured"
sling:hideChildren="[permissions,cloudservices]">
<basic
.../>
<advanced
.../>
</items>
</tabs>
</items>
...
吊帶資源與AEM文檔合併可以發現here。具體查看資源合併屬性的文檔以及如何操作不同的屬性。
的資源合併提供以下屬性:
吊索:hideProperties(字符串或字符串[]) 指定屬性或屬性的列表,以隱藏。 通配符*全部隱藏。
sling:hideResource(布爾型) 指示資源是否應完全隱藏,包括其子級。
sling:hideChildren(字符串或字符串[]) 包含要隱藏的子節點或子節點列表。節點的屬性將保持不變。 通配符*全部隱藏。 (字符串) 包含當前節點應放置在前面的兄弟節點的名稱。
這些屬性會影響覆蓋/覆蓋(通常在/ apps)中使用相應/原始資源/屬性(from/libs)的方式。
感謝Ben,這個配置可以完成,正如Bruce在上面的帖子中提到的那樣,感謝您幫助我找到解決方案。 –
見AEM 6.1 User Interface Customization slide 9爲 「新」 花崗岩編輯對話框繼承...
儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供參考鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效 – slfan
添加
吊帶:hideChildren財產
到子組件的對話框。
您可以將此屬性添加到您需要隱藏的特定字段集/選項卡/字段的直接父級。
語法:
物業名稱:吊帶:hideChildren
物業類型:字符串或字符串[]
屬性值:直接孩子的姓名,*隱藏它們全部
示例:
要隱藏下面的對話框的屬性選項卡下的所有字段:
<content
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured">
<fixedcolums
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/fixedcolumns">
<items jcr:primaryType="nt:unstructured">
<properties
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured">
<startLevel
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/numberfield"
../>
<showHidden
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/checkbox"
../>
</items>
</properties>
</items>
</fixedcolums>
</items>
</content>
吊帶加:hideChildren屬性,其直接的父節點,即項目(見下文)
<content
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured">
<fixedcolums
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/fixedcolumns">
<items jcr:primaryType="nt:unstructured"
sling:hideChildren="*">
<properties
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured">
<startLevel
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/numberfield"
../>
<showHidden
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/checkbox"
../>
</items>
</properties>
</items>
</fixedcolums>
</items>
</content>
只隱藏startLevel字段,將吊帶:hideChildren屬性添加到其直接父節點(請參見下文)
<content
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured">
<fixedcolums
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/fixedcolumns">
<items jcr:primaryType="nt:unstructured">
<properties
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/container">
<items jcr:primaryType="nt:unstructured"
sling:hideChildren="startLevel">
<startLevel
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/numberfield"
../>
<showHidden
jcr:primaryType="nt:unstructured"
sling:resourceType="granite/ui/components/coral/foundation/form/checkbox"
../>
</items>
</properties>
</items>
</fixedcolums>
</items>
</content>
謝謝布魯斯,這個配置已經解決了應用程序中的繼承問題。非常感謝您解決此問題的幫助。 –
嗨布魯斯,執行上述配置後,吊索:hideChildren隱藏其下的所有子節點,同樣正在複製子組件。但是這樣做,它也爲自己隱藏了所有的子節點。這隻解決了一些問題,但問題仍然存在。 –
我已經使用吊索解決了它:hideChildren本身在每一個組件中,所以它有一點點工作,但是這解決了我面臨的問題。我仍然想知道我們是否有任何全球環境來做到這一點。 –