Добавить начальный пробел в переменную EL, когда она не пуста - PullRequest
2 голосов
/ 29 апреля 2020

Есть ли более элегантный способ добавить начальный пробел, когда я добавляю $ {параметр}, и он существует?

Пример: я хочу создать сообщение для пользователя и в зависимости от статуса моего Объект может иметь серийный номер или нет. но в любом случае я хочу показать этот текст:

Should this carrier be removed from it's parent container (${container.name} ${container.serialNumber})?

Когда серийный номер существует, он выглядит нормально, когда серийный номер не существует, между именем и закрывающей скобкой есть пробел.

в настоящее время я бы не стал добавлять что-то вроде ${not empty container.serialNumber?' ':''} раньше.

Это добавляет больше беспорядка в код и не обязательно делает его более читабельным. Другим вариантом было бы добавить место на сервере бэкэнда, но это смешало бы логику внешнего интерфейса и бэкэнда c.

Любые другие предложения?

Заранее спасибо.

1 Ответ

2 голосов
/ 30 апреля 2020

Небольшим улучшением может быть написание выражения вроде:

${empty container.serialNumber?'':' '}

.. но это действительно требует пользовательской EL-функции. Чтобы создать его, см. Информацию о теге EL .

Если вы не хотите писать собственную функцию EL, вы всегда можете добавить метод в модель container, чтобы получить форматированная строка.

...