конкатенация thymleaf внутри th: текст перезаписывает предыдущее значение - PullRequest
0 голосов
/ 07 марта 2019

Я хотел объединить две строковые переменные.Требование очень простое, зависит от условия, я просто должен объединить статическую строку «Вне офиса».Однако, когда он отображается, отображается только «вне офиса», а не предыдущие значения переменных, такие как имя и фамилия.есть идеи?

<option th:text="${assignee.getUserProfile().getFirstName() + ' ' + assignee.getUserProfile().getLastName() + assignee.getUserProfile().getOutOfOfficeApproval() != null? '(Out of office)':''}"/>

1 Ответ

0 голосов
/ 07 марта 2019

Примерно так:

<option th:text="${assignee.getUserProfile().getFirstName() + ' ' + assignee.getUserProfile().getLastName() + (assignee.getUserProfile().getOutOfOfficeApproval() != null? '(Out of office)':'')}"/>

Вы также можете улучшить форматирование с помощью th: with, inlining и javabean.Примерно так:

<option th:with="profile=${assignee.userProfile}" th:text="${profile.firstName + ' ' + profile.lastName + (profile.outOfOfficeApproval != null? ' (Out of office)' : '')}">

или (с Thymeleaf 3)

<option th:with="profile=${assignee.userProfile}">
    [[${profile.firstName + ' ' + profile.lastName}]]
    [[${profile.outOfOfficeApproval != null? '(Out of office)' : ''}]]
</option>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...