Как добавить символ при использовании условного выражения в виде? - PullRequest
1 голос
/ 04 февраля 2020

Мне нужно установить значение href в зависимости от значения sling:vanityPath. hit.properties.sling:vanityPath возвращает строковое значение для свойства sling:vanityPath. Мне нужно добавить / перед значением hit.properties.sling:vanityPath. Возможно ли это сделать в следующем коде, или мне нужно проверить его дважды, но это сопровождается повторением кода?

<a href="${hit.properties.sling:vanityPath == null? hit.path : hit.properties.sling:vanityPath @ extension='html'}"/>

Ответы [ 2 ]

4 голосов
/ 04 февраля 2020

Конкатенация или бинарные операторы не поддерживаются в HTL. Вы можете использовать prependPath или двойной тест для sla sh.

0 голосов
/ 15 апреля 2020

Я не думаю, что вы можете сделать это в одну строку. Но вы можете попробовать определить переменную для объединенного значения вместо дублирования кода для тега. Кроме того, вы должны проверить на ноль конкретно? Вы не можете просто отменить условия и проверить, существует ли значение?

<sly data-sly-test.concatenatedURL="${['/', hit.properties.sling:vanityPath] @ join = ''}"/>
<a href="${hit.properties.sling:vanityPath ? concatenatedURL : hit.path @ extension='html'}"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...