Запрос к бэкенду
Запрос к бэкенду позволяет автоматически запускать запрос при переходе пользователя на страницу, содержащую этот запрос. Вы можете настроить запрос к бэкенду для конкретного виджета или для всей страницы. Полученная с помощью запроса к бэкенду информация может использоваться в любом виджете на странице.
Типы запросов
Мы предлагаем следующие типы запросов к бэкенду, которые можно настроить для любого виджета или страницы.
- Query Collection or Table: Этот тип запроса используется для получения одной записи или списка записей из коллекции Firestore или таблицы Supabase.
- Document from Reference: Используется для получения деталей из ссылки на документ.
- API Call Query: Используется для запуска вызова API.
- SQLite Query: Используется для выполнения SQL-запросов.
- Algolia Search: Используется для запуска поиска Algolia в коллекции Firestore.
Различия между действиями и запросами к бэкенду
| Аспект | Actions | Backend Queries |
|---|---|---|
| Триггер | Запускаются взаимодействиями пользователя, такими как нажатия, двойные нажатия или длительные нажатия на виджеты, или могут выполняться автоматически при загрузке страницы. | Автоматически запускаются при переходе пользователя на страницу или виджет, содержащий запрос. |
| Использование | Могут использоваться для навигации между страницами, отображения сообщений, обновления переменных, выполнения вызовов API и многого другого. | Для приложений, требующих мгновенных обновлений, таких как чат или live-результаты, запросы к бэкенду могут автоматически обновлять UI с учетом последних изменений в базе данных. |
| Множественность | На одном виджете можно указать несколько действий. | На конкретном виджете или странице можно указать только один запрос к бэкенду. |
| Условное выполнение | Могут быть условными, то есть выполнять разные действия при определенных условиях. | - |
| Кэширование | - | Могут включать механизмы кэширования для улучшения производительности приложения за счет снижения количества вызовов сервера и обеспечения оффлайн-доступа к данным. |
| Обработка состояний | - | Часто включают обработку состояний загрузки и пустых состояний, поскольку процесс получения данных может занимать время и не всегда возвращать результаты. |
| Получение данных | - | Используются только для получения данных из бэкенда. |
Изменение индикатора загрузки
Пока запрос к бэкенду загружает результаты, отображается индикатор загрузки по умолчанию из Project Theme Loading Indicator (который можно изменить в Navigation menu > Theme Settings > Design System > Loading Indicator.) Однако, если вы хотите заменить его на пользовательский индикатор загрузки для конкретного запроса к бэкенду, следуйте инструкциям ниже:
Чтобы изменить индикатор загрузки:
- Убедитесь, что вы добавили запрос к бэкенду.
- Откройте раздел Backend Query (справа) и прокрутите вниз до Backend Query Loading Widget. Откройте его, нажав на значок стрелки.
- Установите Loading Widget Type в Image. Вы также можете выбрать Component, если уже создали компонент загрузки.
- Включите View in UI Builder. Это позволит увидеть ваш пользовательский индикатор загрузки на холсте (до запуска приложения).
- Выберите Image Type, добавьте изображение и настройте его Padding и Width.
- Чтобы отобразить индикатор по центру, включите переключатель Center Image.
- Запустите приложение, и ваш пользовательский индикатор загрузки появится во время загрузки данных.
Копирование запроса
Иногда может потребоваться отобразить один и тот же список элементов с небольшими изменениями. Например, показать все задачи Todo и только завершенные задачи Todo. В таком случае вы можете скопировать весь запрос к бэкенду, чтобы ускорить процесс сборки. Это особенно полезно при сложных запросах к бэкенду.
Чтобы скопировать запрос:
- Выберите виджет (например, ListView, GridView и т. д.), к которому уже добавлен запрос к бэкенду.
- Выберите вкладку Backend Query и нажмите кнопку Copy.
- Теперь выберите виджет (куда вы хотите добавить запрос), перейдите на вкладку Backend Query и нажмите кнопку Paste Backend Query.
- Нажмите Confirm.