0

我正在使用视觉来访问组件的设计对话框属性。就像是

<span data-sly-test="${currentStyle.delimiter}">${currentStyle.delimiter}</span>

但我得到的只是一个空字符串。

我试图通过尝试以下方法来解决这个问题。

  1. 激活设计节点
  2. 删除页面并创建新页面。
  3. 删除组件并在页面上再次拖放组件。
  4. 我检查了 currentDesign 的 JSON 输出,我试图访问的所有值都在那里可用。
4

1 回答 1

0

你有两个选择

  1. 在预览/发布模式下,通过 currentDesign.getJSON() 获取设计值,解析从中返回的值,然后从 Json 对象中键入您想要的值。
  2. 您可以通过从模板 head.js 中删除一行代码来解决此问题。如果您从“/libs”(视觉)页面之一继承任何模板,并且 head.js 将具有以下代码行,因此您可以在模板中覆盖 head.js 并在代码行下面注释掉。

if (wcmmode.disabled) { request.setAttribute(Packages.com.day.cq.wcm.api.components.ComponentContext. BYPASS_COMPONENT_HANDLING_ON_INCLUDE_ATTRIBUTE, true); }

注释掉这个,一切都恢复正常了。

于 2016-01-15T05:16:23.233 回答