如何连接 Sightly/HTL 中的字符串?
How to concatenate strings in Sightly/HTL?
我有以下代码:
<sly data-sly-use.link="${'core.impl.view.tools.LinkUtils' @ path=properties.targetURL}"></sly>
我想将 properties.linkType
连接到 properties.targetURL
。
有什么办法可以做到吗?我在网上找到了示例,但它们似乎不适合我的情况。
这取决于您想要的字符串连接类型:
- 不支持使用运算符连接字符串,即。你不能做
${properties.targetURL + properties.linkType}
。解决方法(由@Jens 建议)是执行以下操作:<sly data-sly-test.concatenated="${'{0}{1}' @ format=[properties.targetURL, properties.linkType]}"></sly>
- 连接 HTML 输出中的字符串可以通过将 HTL 表达式彼此相邻来完成,即。
${properties.targetUrl}${properties.linkType}
- 通过多个表达式选项支持将两个字符串发送到使用对象:
<sly data-sly-use.link="${'core.impl.view.tools.LinkUtils' @ path=properties.targetURL, type=properties.linkType}"></sly>
- 在某些情况下使用 URI Manipulation
可能会连接字符串以形成 URL
我只想添加一种将字符串连接到上述答案的方法,方法是使用 @ join
。
<sly data-sly-test="${['String1','String2','String3'] @ join = '-'}"/>
它将给出如下输出:
String1-String2-String3
我有以下代码:
<sly data-sly-use.link="${'core.impl.view.tools.LinkUtils' @ path=properties.targetURL}"></sly>
我想将 properties.linkType
连接到 properties.targetURL
。
有什么办法可以做到吗?我在网上找到了示例,但它们似乎不适合我的情况。
这取决于您想要的字符串连接类型:
- 不支持使用运算符连接字符串,即。你不能做
。解决方法(由@Jens 建议)是执行以下操作:${properties.targetURL + properties.linkType}
<sly data-sly-test.concatenated="${'{0}{1}' @ format=[properties.targetURL, properties.linkType]}"></sly>
- 连接 HTML 输出中的字符串可以通过将 HTL 表达式彼此相邻来完成,即。
${properties.targetUrl}${properties.linkType}
- 通过多个表达式选项支持将两个字符串发送到使用对象:
<sly data-sly-use.link="${'core.impl.view.tools.LinkUtils' @ path=properties.targetURL, type=properties.linkType}"></sly>
- 在某些情况下使用 URI Manipulation 可能会连接字符串以形成 URL
我只想添加一种将字符串连接到上述答案的方法,方法是使用 @ join
。
<sly data-sly-test="${['String1','String2','String3'] @ join = '-'}"/>
它将给出如下输出:
String1-String2-String3