aem - 将参数传递给 data-sly-include in sightly/HTL

标签 aem sightly htl

我有一段 Sightly/HTL 代码如下 -

<div class="tooltip_modal">
  <div class="modal-content">
    <div class="modal-header">
      <span class="close">&times;</span>
      <h5>Tooltip</h5>
    </div>
    <div class="modal-body">
      <p>${properties.tooltip_textfield}</p>
    </div>
  </div>
</div>

请注意,${properties.tooltip_textfield} 是硬编码到代码中的。 我像这样在我的组件中包含这段代码 -

<div data-sly-include="/custom/tooltip-modal/tooltip-modal.html" data-sly-unwrap></div>

现在我想将一个参数传递给 data-sly-include 语句,以便在呈现我的 HTML 代码时,传递的参数应该放在 ${properties.tooltip_textfield} 的位置。

换句话说——

调用这个

<div data-sly-include="/custom/tooltip-modal/tooltip-modal.html" parameter= "Dummy Text" data-sly-unwrap></div>

应该渲染这个 -

<div class="tooltip_modal">
      <div class="modal-content">
        <div class="modal-header">
          <span class="close">&times;</span>
          <h5>Tooltip</h5>
        </div>
        <div class="modal-body">
          <p>Dummy Text</p>
        </div>
      </div>
    </div>

这可能吗? 提前致谢!

最佳答案

我相信您要找的是 Sightly Template and Call特征。

templates/tooltip.html:

<template data-sly-template.tooltip="${@ text}" class="tooltip_modal">
  <div class="modal-content">
    <div class="modal-header">
      <span class="close">&times;</span>
      <h5>Tooltip</h5>
    </div>
    <div class="modal-body">
      <p>${text}</p>
    </div>
  </div>
</template>

组件.html:

<sly data-sly-use.tooltipTmpl="templates/tooltip.html"
data-sly-call="${tooltipTmpl.tooltip @ text='Sample text'}" data-sly-unwrap>
</sly>

关于aem - 将参数传递给 data-sly-include in sightly/HTL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45340899/

相关文章:

adobe - HTL - 如何在另一个页面上显示页面,如弹出/模式

java - AEM 6.3 使用 OSGi R6 注释和 Sling 模型

adobe - 看得见:检查空列表

html - Sightly:迭代一个列表并使用其索引打印另一个列表(不嵌套,只是共享索引)

javascript - 确保组件的客户端库文件仅在组件存在时加载到页面上的最佳方法是什么?

aem - javax.inject,version=[0.0,1) -- 无法解析

java - AEM - I/O 异常连接被拒绝

java - 吊带 - AEM 吊带 :members from a new collection

aem - CQ-检查资源对象是否有效

aem - 如何在页面组件中包含 AEM parsys