问题标签 [htl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
152 浏览

aem - AEM 6.1,HTL:: 无法将样式应用于一段文本

下面是一个组件的 HTL 文件中的一段代码:

这是 info-text.js

PROP_DEFAULT_TEXT 是在 infoText 属性尚未创建时显示在页面上的默认文本。我希望以某种方式为这个默认文本“在此处输入信息文本”提供样式。我尝试使用

但在页面上它看起来像下面的简单文本:

在此处输入图像描述

我不确定我是否使用了 HTL Context 来使其工作,我尝试了一些事情,但它不会工作。所以,我不知道我应该怎么做才能让它工作。

提前致谢

0 投票
1 回答
1463 浏览

aem - 如何使用 HTL/Sightly 访问后缀?

TLDR:创建一个名为“mypage.html”的新 AEM 页面。在 URL 中提供后缀。将此后缀传递给 Sling servlet。后缀充当 URL 参数。

示例所需的 URL:http://localhost:4502/mypage.html/john/smith


所以我创建了一个可以读取后缀的 servlet(使用本指南: http ://www.aemcq5tutorials.com/tutorials/sling-servlet-in-aem/)。

如果我通过http://localhost:4502/content/geometrixx/en.name.html/first/last访问它,它工作正常

我接下来要做的是创建一个名为“mypage.html”的新页面,并提供 first 和 last 作为后缀。

mypage 将在格式正确的页面中显示与此人相关的信息。使用上面的代码,我得到的只是 JSON 响应。

我认为实现我的目标需要一些假设/更改:

  1. 我将在 servlet 代码上使用路径和请求参数(即使用 request.getParameter("myparameter")
  2. 我将使用 AJAX 访问 servlet

如果我的假设是正确的,我如何从 HTL/Sightly 访问后缀?我知道我可以通过 ${request.requestURI} 甚至 Javascript 获取 URI。然后使用这个值,我可以在我的 AJAX 调用中使用它。

但这是 AEM/Sling 的做法吗?或者也许有更好的方法来做我想做的事?

非常感谢!

0 投票
2 回答
377 浏览

aem - 在 Adob​​e AEM HTL(以前称为 Sightly)中实施自定义选项?

这个问题是关于选项的,它是 Adob​​e 专有语言中的一项功能HTL

我的简单问题:我可以通过实现自己的自定义选项来扩展 HTL 吗?如果是这样,怎么做?

0 投票
1 回答
204 浏览

aem - 我可以在 WCMUsePojo 布尔 getter 中使用除“is”之外的其他前缀吗?

我在 Java pojos 中看到了使用canhasshould而不是通常的 is的约定。但是,在 AEM 6.1 中我们有WCMUsePojo权利吗?肯定有效,我试过了,但没有奏效。这是一个错误还是从未真正打算为除isWCMUsePojo之外的布尔值添加其他 getter 前缀?

0 投票
1 回答
1093 浏览

aem - AEM HTL/Sightly 在 URL 中连接字符串以在灯箱中播放视频或在新窗口中播放 PDF

我是 Sightly 和 AEM 开发的新手,我正在尝试连接以下字符串 href 以在灯箱中播放视频或在新窗口中打开 PDF。当我试图让它发挥作用时,任何建议都将不胜感激。

谢谢

0 投票
2 回答
207 浏览

sling - 使用 HTL 在 Sling 中应用母版页模板

是否有任何简单的方法可以将页面模板应用于多个 Apache Sling 脚本?

我正在寻找类似于JSP 2.0 Tag选项的东西。但是,我使用的是不支持此类标签的 HTL。

当然,我可以使用 HTL 包含,例如data-sly-include="${'header.html'},但是这些必须手动包含在我创建的每个页面中。

理想情况下,我希望能够拥有一个包含布局的母版页,然后自动将其应用于指定资源类型的所有页面,为每个资源的特定内容留下一个可定制的区域。然后,我可以将我的add.html, edit.html, html.html(etc) 文件限制为仅包含页面内容部分的代码块,从而防止在多个文件中不必要地重复布局代码。

我想我可以通过创建一个母版页资源(例如“页面”),然后设置sling:resourceSuperType各个资源来实现这一点,但由于这是一个后备,它只会在没有匹配脚本的情况下启动sling:resourceType-并且会有这样的脚本。

0 投票
1 回答
74 浏览

aem - 如何检测 Sling 组件未能呈现并采取适当的措施?

我正在运行 AEM 6.3,并且有一个使用 HTL、Java 等构建的应用程序。我有一个组件作为资源包含,如下所示:

在某些情况下,该资源无法加载并且没有呈现 HTML。如何检测到该故障并采取措施?

最好,我想正常返回响应并设置 HTTP 标头。

谢谢你的帮助!

0 投票
1 回答
433 浏览

javascript - 未在导入的组件上设置 AEM 6.2 data-sly-resource resourceType

在 AEM 6.2 中,我想使用“data-sly-resource”导入组件,如下所示:

在此代码中,resourceType 用于引用组件的路径,因此未设置为导入组件的属性。

如果我使用它,则导入的组件没有定义 resourceType。如何定义导入组件的 resourceType?

0 投票
1 回答
1554 浏览

html - 将数字与对话框中的值进行比较

我希望能够读取我在对话框中设置的值并在 Sightly 中使用它来控制显示的代码部分。当我尝试使用下面的代码时,我收到此错误“操作数不是同一类型:仅支持数字比较”。我尝试了很多不同的修复程序,但没有发现任何有效的方法或任何文档。context = 'number' 不是正确的语法,还是我必须添加其他内容?

在对话框中

在 HTL 中

0 投票
1 回答
362 浏览

aem - 访问在页面级 JSP 中设置的变量,在 AEM HTL 中组件的 data-sly-use javascript 中设置?

在页面级组件中,我设置了一个变量。

现在我在页面上创作了一些组件。这些组件应该可以访问 stepIndex 变量。这些组件是用 HTL 编写的,我想在 data-sly-use Javascript api 中访问 stepIndex。

我怎样才能做到这一点?

我可以通过请求使用 JSP 脚本来做到这一点。GET 和 SET 属性,但我想避免这种情况。