Условия показа

Показывать или скрывать блок по состоянию: пусто ли, равно ли, раньше ли.

Вкладка «Логика», раздел «Условия показа» и добавление условия.
Вкладка «Логика», раздел «Условия показа» и добавление условия.

Где: Свойства справа → вкладка «Логика» → «Условия показа».

Начните с готового условия. Пока условий нет, раздел показывает список: «только тем, кого приложение узнало», «пока номер не дали», «только на телефоне», «прятать, когда листают вниз» и ещё несколько. Нажатие собирает условие целиком — что проверять, оператор и значение, — и дальше его можно править как любое другое. Дальше по списку, под кнопкой «Своё условие», собирается что угодно руками, а рецепты остаются на кнопке «Готовые условия».

Под собранными условиями стоит фраза — «Виден, когда …» и, если есть что скрывать, «Скрыт, когда …». Это и есть ответ на главный вопрос: условий бывает несколько, и правила у них разные — «показывать» обязаны совпасть все сразу, а «скрывать» срабатывает по любому. Фраза строится по тем же правилам, по которым приложение решает на самом деле.

Условие состоит из четырёх частей: показывать или скрывать, какое поле, как сравнивать, с чем. Операторы: равно, не равно, содержит, заполнено, пусто, больше чем, меньше чем, раньше чем, позже чем. У «заполнено» и «пусто» значения нет — они спрашивают про само поле. «Больше/меньше» и «раньше/позже» сравнивают одинаково — числа числами, даты датами; слова разные, потому что про цену спрашивают «больше», а про начало сеанса «позже».

  • Кнопка «Поделиться номером» — показывать, пока user.phone не заполнен; всё остальное — пока заполнен.
  • Плашка «Мест нет» — показывать, когда {{item.seats}} равно 0.
  • Кнопка «Записаться» — скрывать, когда {{item.start}} раньше чем {{now}}: событие уже прошло.
  • Админский блок — показывать, когда {{user.id}} равно вашему идентификатору в Telegram.
  • Шапка, уезжающая при листании вниз, — скрывать, когда «Листают вниз» заполнено. Обратное условие писать не нужно: наверх листнули — шапка вернулась, и у самого верха экрана она есть всегда.
  • Кнопка «Наверх» — показывать, когда «Пролистано, px» больше чем 400.
  • Своя кнопка «назад» в своей шапке — показывать, когда «Есть путь назад» заполнено: на первом экране её не будет, как и у встроенной. Поле лежит в разделе «Переходы».
  • Та же кнопка не нужна в Telegram — он рисует свою: добавьте второе условие «скрывать, если „Открыто в Telegram“ заполнено». Поля «Открыто в Telegram» и «Открыто в MAX» лежат в разделе «Приложение».

Кнопка «ИЛИ» внизу условия пристёгивает к нему второе: сработало любое из них — сработала связка. Так пишется и «больше или равно» («больше 100» ИЛИ «равно 100»), и диапазон наоборот — «скрывать, если больше 100 ИЛИ меньше 10». Без «ИЛИ» условия «показывать» требуются все сразу.

Рядом — кнопка «И»: она пристёгивает условие, которое должно сработать вместе с предыдущим. Так проверяют несколько вещей за раз — «роль админ И экран главный И вкладка запомнена», — и так пишется то, чего отдельными условиями не написать: два условия «скрывать» прячут блок по любому из них, а связка «И» — только когда верны оба. «И» связывает крепче «ИЛИ»: «А ИЛИ Б И В» читается как «А, либо Б вместе с В».

Значок копии у условия запоминает его целиком — что проверять, оператор и значение, — а кнопка «Вставить условие» внизу ставит такое же на любом другом блоке, хоть на соседнем экране. Она и появляется только после копирования. Скопировать сразу всю логику блока — действия и условия вместе — можно правым нажатием по блоку: «Копировать логику».

Читать дальше