HTL data-sly-use的用法?

Usage of HTL data-sly-use?

我见过 HTL 的不同用法 data-sly-use

我是这样看的:

<sly data-sly-use.example="com.example.aem.HellowWorldModel"> 
 <!--/* all code here */--> 
</sly>

而且我看到它是这样自动关闭的:

<sly data-sly-use.example="com.example.aem.HellowWorldModel" />
<!--/* All code after */-->

为什么要使用每种方式,最好的使用方式是什么?

我认为对于使用它的方式没有任何明确的标准。这可能完全取决于个人偏好,因为这两种方法都会使 use 对象对整个模板可用。

您可以注意到官方文档中也使用了这两种方法。

文档 relational operations section 中的自闭合标记方法

<sly data-sly-use.logic="logic.js" />
${'a' in logic} <!--/* returns true */-->
${'b' in logic} <!--/* returns true */-->
${'c' in logic} <!--/* returns true */-->
${'two' in logic} <!--/* returns false */-->

以及文档其余部分中的其他方法。

使用自闭标签方法有助于避免文件内容的额外缩进,而嵌套标签方法有助于提高代码可读性,尤其是当模板中有多个使用对象并希望将代码分隔成可以在其中使用该对象的块。