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

Функции утилиты

Функции утилиты играют ключевую роль в упрощении общих задач разработки приложений, таких как выполнение быстрых вычислений, форматирование данных и объединение строк.

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

В FlutterFlow есть следующие встроенные функции:

  • Объединение текста: Встроенная функция, которая позволяет вам объединять строки, делая легким объединение нескольких текстовых элементов вместе без швов.

  • Выражение кода: Эта функция позволяет выполнять простые вычисления и манипуляции данными быстро и эффективно.

Объединение текста

Часто вам придется столкнуться с ситуациями, когда нужно показать две переменные в одной строке или виджете текста. Например, в нашем демо электронной коммерции у нас есть объект цены в следующем формате:


"price": {
"currency": "$",
"amount": 25.50
}

Однако при отображении данных в пользовательском интерфейсе мы должны объединить и валюту, и сумму, так как они имеют смысл только вместе.

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

Вот быстрое демо:

Объединение текста против виджета RichText

Встроенная функция Объединение текста позволяет только объединять несколько значений (динамических или статических) вместе, причем к каждому из них применяется один и тот же стиль текста. Если вам нужно объединить несколько строковых значений с различными стилями текста для каждого из них, рассмотрите использование виджета RichText.

Выражения кода

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

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

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

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

Выражение будет стоимость - (стоимость * скидка).

Приоритет операций

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

В этом случае нам нужны переменные стоимость и скидка.

Итак, мы создаем два аргумента в диалоговом окне Выражение кода, где они содержат значение стоимости и скидки, назначаем тип данных для каждого аргумента и определяем тип возврата окончательного значения. В данном случае тип возврата - это double, поскольку он содержит итоговую сумму.

Теперь вы можете написать кодовое выражение в поле Выражение и нажать на Проверить ошибки, чтобы увидеть, является ли выражение допустимым. Если оно допустимо, вы увидите сгенерированный код для него.

Аргументы в кодовом выражении могут иметь следующие свойства:

Тип данныхПоддержка пустых значенийПоддержка списка
Строка
Целое число
Дробное число
Логический
Цвета

Общие примеры

Вот несколько общих выражений, которые вы можете использовать для своей бизнес логики:

ВыражениеОписаниеПримерТип возвращаемого значения
contains()Проверяет, содержит ли строка определенное подстроку.текст1.contains(текст2)bool
split()Разбивает строку на список подстрок.текст.split(",")Список<Строка>
toLowerCase() или toUpperCase()Преобразует все символы в строке в нижний регистр.текст.toLowerCase()Строка
contains()Проверяет, содержит ли список определенный элемент.фрукты.contains("яблоко")bool
max()Возвращает большее из двух чисел.math.max(а, б)целое число
toDouble()Преобразует целое число в дробное число.целочисленное значение.toDouble()дробное число
int.parse(s)Преобразует строку в целое число.int.parse(строковоеЗначение)целое число

Пользовательские функции

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

к сведению