Перейти к основному содержимому

Условная логика

Условная логика - это фундаментальное понятие в программировании и разработке программного обеспечения. Она включает принятие решений в коде на основе определенных условий. Это достигается с помощью условных операторов, которые оценивают выражения, чтобы определить, истинны они или ложны. В зависимости от результата выполняются разные действия или исходы.

Как работает условная логика

  • Условие: Выражение, которое оценивается как истинное или ложное.
  • Путь "Истина": Набор действий для выполнения, если условие истинно.
  • Путь "Ложь": Набор действий для выполнения, если условие ложно.

true-false.png

Условные потоки

Условные потоки улучшают базовую логику "истина-ложь", обрабатывая несколько условий и выполняя определенные действия на основе этих условий. Это достигается через более сложные потоки, такие как одиночные условия, несколько условий (с использованием AND/OR) и условные значения с логикой If/Then/Else.

Одиночное условие

Этот поток позволяет вам определить условие на основе сравнения двух значений, которые могут быть установлены вручную или получены из переменных. Условие вернет Истину или Ложь.

Операторы сравнения:

  • Равно
  • Не равно
  • Меньше
  • Больше
  • Меньше или равно
  • Больше или равно
  • Установлено
  • Не установлено

single-condition.png

Несколько условий (AND/OR)

Этот поток позволяет объединять несколько одиночных условий с помощью логических операторов AND или OR. Это полезно для более сложных процессов принятия решений.

multiple-condition.png

Условное значение (If/Then/Else)

Условное значение позволяет устанавливать динамическую переменную на основе различных условий. Для каждого условия можно указать значение, которое будет присвоено, если условие истинно. Можно предоставить значение по умолчанию, если ни одно из условий не выполняется.

См. пример ниже.

Установка свойств виджетов с использованием условной логики

FlutterFlow позволяет вам динамически устанавливать свойства виджетов на основе условной логики. В зависимости от ожидаемого типа данных свойства вы можете использовать комбинацию условных потоков для реализации нужной логики.

Вот пример, где мы используем Условную логику для определения значения виджета Text:

Если состояние виджета placePicker установлено, то возвращается строка адреса placePicker. Иначе, если параметр компонента defaultAddress установлен и не пуст, то возвращается это в виде строки. В противном случае возвращается значение адреса по умолчанию.

Условные действия

Когда вам нужно выполнять действия на основе определенных условий, вы можете сделать это в редакторе потока действий. Комбинируя простые одиночные условия или несколько условий, вы можете создавать сложные логические потоки. Эти условия могут быть настроены, как изучено в разделе Установка свойств, позволяя вашим потокам действий следовать логике Истина/Ложь или структурам If-Else, If-Else If-Else.

Вот краткое демо, иллюстрирующее простой поток действий с одним условием:

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