Автор оригинала: Attila Fejér.
1. Введение
В этом быстром учебнике, мы будем смотреть на то, как работать с boolean значения в Thymeleaf.
Прежде чем мы погрузимся в детали, Основы Thymeleaf можно найти в этой записи .
2. Оценка выражений как booleans
В Thymeleaf любое значение может быть оценено до boolean. У нас есть несколько ценностей, интерпретируемых как ложные :
- недействительный
- boolean значение ложный
- число 0
- персонаж и 0
- строки “ложный” , “Выключи” и “нет”
Любое другое значение оценивается истинное .
3. Использование Booleans в качестве условий рендеринга
Для условной визуализации HTML-элемента у нас есть два варианта: th:если и th:если Атрибуты.
Их эффект прямо противоположный – Thymeleaf сделает элемент с th:если атрибут только в том случае, если значение атрибута истинное и с й :если атрибут только в том случае, если его значение ложный:
will be rendered won't be rendered won't be rendered will be rendered
4. Логические и условные операторы
Кроме того, мы можем использовать три классических операторов логики в Thymeleaf:
- и
- или
- отрицание с ключевым словом не или символ “!”
Мы можем использовать этих операторов внутри переменных выражений или комбинируя с ними несколько переменных выражений:
The weather is bad The weather is bad The weather is good The weather is good It's warm It's warm It's warm It's warm
Мы также можем использовать условных операторов: если-то , если-то-то- , и операторы по умолчанию.
если-то-то- оператор является обычным ternary, или ? : оператор:
It's
Более того, если-то оператором является упрощенная версия, где у нас нет другой части:
Оператор по умолчанию возвращает первый operand, если он не нулевой а второй в противном случае:
Оператора по умолчанию также называют оператором Элвиса из-за его сильного сходства с прической Элвиса.
Обратите внимание, что оператор Элвиса делает только нулевой проверить, он не оценивает первый operand как boolean.
5. #bools коммунальный объект
#bools является объектом утилиты, который доступен в выражениях по умолчанию и имеет некоторые удобные методы:
- #bools.isTrue (obj) возвращает ли аргумент оценивается в истинный
- #bools.isFalse (obj) возвращает ли аргумент оценивается в ложный
- #bools.xxxIsTrue (сборник) преобразует элементы аргумента в booleans с #bools.isTrue() затем собирает их в тот же тип коллекции
- #bools.xxxIsFalse (сборник) преобразует элементы аргумента в booleans с #bools.isFalse() затем собирает их в тот же тип коллекции
- #bools.xxxAnd (сборник) возвращает истинное если все элементы аргумента оцениваются истинный
- #bools.xxxOr (сборник) возвращает истинное если какой-либо элемент аргумента оценивается истинный
В методах, вышеуказанных xxx может быть либо массив , список или установить , в зависимости от аргумента метода (и значения возврата в случае xxxIsTrue() и xxxIsFalse() ).
6. Заключение
В этой статье мы видели, как Thymeleaf интерпретирует ценности как booleans, а также как мы можем визуализировать элементы условно и работать с boolean выражения.
Как обычно, код (с большими примерами) доступен более на Github .