当 data-sly-test 评估为 false 时保留子元素?

Keep child elements when data-sly-test evaluates to false?

检查这个

<a href="${mybean.href}" data-sly-test="${mybean.href}">
  <img src="myimage.jpg" />
</a>

我们需要什么

当 data-sly-test="${mybean.href}" 计算结果为 false 时,仅隐藏锚标记,而不隐藏其子元素。默认行为是 img 标签也会在锚标签消失时消失。我们只想隐藏 wrapper 标签。

我希望有这样的参数

<a href="${mybean.href}" data-sly-test="${mybean.href @ hideChildren=false}">
  <img src="myimage.jpg" />
</a>

您可以在您的锚标记中使用 data-sly-unwrap,如下例所示,其中 mybean.href 真正的结果删除锚标记并仅生成 <img src="myimage.jpg" />

示例

<a href="http://www.google.com" data-sly-test="${mybean.href}" data-sly-unwrap>
  <img src="myimage.jpg" />
</a>

对于您的情况,以下解决方案应该有效

<a href="${mybean.href}" data-sly-unwrap="${!mybean.href}">
  <img src="myimage.jpg" />
</a>