Скрытый тег тимелеафа wen th: text = "# {var}" - PullRequest
0 голосов
/ 08 мая 2020

Привет, я пытаюсь скрыть теги, когда сообщение пустое, но я не могу понять, как это сделать, для того, что я читаю, если я хочу скрыть и пустую переменную, все, что мне нужно сделать, это либо "если" или «если»:

 <p th:unless="${#strings.isEmpty(myVar.theEmptyVar)}">

Но когда я использую тип сообщения var Кажется, он не работает, код не работает

<p th:unless=""{#strings.isEmpty(messageVar)}">

Ближайшее, что я получил, это это, но он выиграл Ничего не показываю:

<p th:if="${!#strings.isEmpty('[[#{label}]]')}" >

Я просматривал документацию по тимелеафу и гугл, но, похоже, не могу найти решение, которое работает, спасибо.

1 Ответ

0 голосов
/ 08 мая 2020

Предполагая, что у вас есть label, который является пустой записью в файле сообщений, например:

label=

... тогда вы можете использовать в своем шаблоне Thymeleaf следующее:

<p th:if=" ! ${#strings.isEmpty(#messages.msg('label'))}">
     my text     
</p>

! - это отрицание («не»). Следовательно, поскольку сообщение для label пусто, вы не увидите на веб-странице «мой текст», а тег <p> будет создан not .

Если вы удалите !, вы увидите «мой текст» внутри тега <p>.

Вы не можете использовать #{label} непосредственно в этой спецификации c чехол. Вы должны обернуть его методом #messages.msg().

Кроме того, если сообщение label не существует в файле сообщения, это будет вести себя так же, как label=.

...