Java HTL数据的使用情况如何?

Java HTL数据的使用情况如何?,java,adobe,aem,sightly,Java,Adobe,Aem,Sightly,我看到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

我看到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对象

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

文档中的自动关闭标记方法

<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 */-->

${a'在逻辑中}
${b'在逻辑中}
${c'在逻辑中}
${logic中的'two}
其他方法将在其余文档中介绍


使用自动关闭标记方法有助于避免额外缩进文件内容,而嵌套标记方法有助于提高代码可读性,尤其是如果模板中有多个use对象,并且希望将代码划分为可以使用该对象的块。

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

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

文档中的自动关闭标记方法

<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 */-->

${a'在逻辑中}
${b'在逻辑中}
${c'在逻辑中}
${logic中的'two}
其他方法将在其余文档中介绍


使用自动关闭标记方法有助于避免文件内容的额外缩进,而嵌套标记方法有助于提高代码的可读性,特别是当模板中有多个使用对象,并且希望将代码分隔为可以使用该对象的块时。

同意。这似乎是个人对可读性或编码风格的偏好。我主要对函数感到好奇,但即使将带参数的表达式传递给use调用,似乎也没有函数上的差异。伟大的链接支持也为这个答案!同意。这似乎是个人对可读性或编码风格的偏好。我主要对函数感到好奇,但即使将带参数的表达式传递给use调用,似乎也没有函数上的差异。伟大的链接支持也为这个答案!