Рубрики
Без рубрики

Работа с Boolean в Thymeleaf

Взгляните на то, как работать с boolean значения в Thymeleaf.

Автор оригинала: 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 .