logologo
Початок
Посібник
Розробка
Плагіни
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Початок
Посібник
Розробка
Плагіни
API
logologo
Огляд

Блоки

Огляд

Блоки даних

Таблиця
Форма
Деталі
Список
Картки-сітка
Діаграма

Блок фільтрів

Форма

Інші блоки

Панель керування
Iframe
Блок посилання
Markdown
JS Block

Налаштування блоку

Діапазон даних
Макет
Правила зв'язування блоків
Правила зв'язування полів
Правила сортування
Видалення блоку
Заголовок блоку

Поле

Огляд

Загальні налаштування

Поля таблиці
Поля деталей
Поля форми фільтрації
Поля форми

Специфічні налаштування

Дата
Файловий менеджер
Підформа
Випадаючий список
Селектор даних
Каскадний селектор
Підтаблиця
Піддеталі
Заголовок
JS Field
JS Item
JS Column

Налаштування поля

Значення за замовчуванням
Мітка поля
Показувати мітку
Підказка для поля
Діапазон даних
Компонент поля
Форматування чисел
Режим
Обов'язкове
Поле заголовка
Правила валідації
Компонент поля зв'язку

Дія

Огляд

Налаштування дії

Кнопка редагування
Повторне підтвердження
Призначення поля
Прив'язка робочого процесу
Спливаюче вікно редагування
Правила зв'язування дій

Тип дії

Додати
Перегляд
Видалити
Редагувати
Імпорт
Імпорт Pro
Експорт
Експорт Pro
Експорт вкладень
Фільтр
Посилання
Відкрити спливаюче вікно
Оновити
Надіслати дані
Запустити робочий процес
Оновити запис
Масове оновлення
Додати підзапис
JS Action
Дозволи на дії

Поглиблено

Правила зв'язування
Потік подій
Змінна
RunJS
Previous PageДозволи на дії
Next PageПотік подій
Повідомлення про переклад ШІ

Ця документація була автоматично перекладена штучним інтелектом.

#Правила взаємодії

#Вступ

У NocoBase Правила взаємодії — це механізм, який використовується для керування інтерактивною поведінкою елементів інтерфейсу на фронтенді. Вони дозволяють користувачам налаштовувати відображення та логіку поведінки блоків, полів та дій в інтерфейсі на основі різних умов, забезпечуючи гнучкий інтерактивний досвід з мінімальним кодуванням. Ця функція постійно вдосконалюється та оптимізується.

Налаштувавши правила взаємодії, ви можете реалізувати, наприклад:

  • Приховувати/відображати певні блоки залежно від поточної ролі користувача. Різні ролі бачать блоки з різним обсягом даних, наприклад, адміністратори бачать блоки з повною інформацією, тоді як звичайні користувачі можуть бачити лише блоки з базовою інформацією.
  • Автоматично заповнювати або скидати значення інших полів, коли у формі вибрано певний варіант.
  • Вимикати певні поля введення, коли у формі вибрано певний варіант.
  • Встановлювати певні поля введення як обов'язкові, коли у формі вибрано певний варіант.
  • Керувати видимістю або можливістю натискання кнопок дій за певних умов.

#Налаштування умов

20251029114532

#Змінна ліворуч

Змінна ліворуч в умові використовується для визначення «об'єкта оцінки» в правилі взаємодії. На основі значення цієї змінної виконується перевірка умови, яка визначає, чи буде спрацьовувати дія взаємодії.

Доступні змінні включають:

  • Поля в контексті, такі як Поточна форма/xxx, Поточний запис/xxx, Поточний запис спливаючого вікна/xxx тощо.
  • Глобальні системні змінні, такі як Поточний користувач, Поточна роль тощо, які підходять для динамічного керування на основі ідентифікації користувача, дозволів та іншої інформації.

    ✅ Доступні варіанти змінної ліворуч визначаються контекстом, у якому знаходиться блок. Використовуйте змінну ліворуч розумно, відповідно до бізнес-потреб:

    • Поточний користувач представляє інформацію про поточного авторизованого користувача;
    • Поточна форма представляє значення, що вводяться в форму в реальному часі;
    • Поточний запис представляє збережене значення запису, наприклад, рядок у таблиці.

#Оператор

Оператор використовується для встановлення логіки перевірки умови, тобто, як порівнювати змінну ліворуч зі значенням праворуч. Різні типи змінних ліворуч підтримують різні оператори. Поширені типи операторів наведено нижче:

  • Текстовий тип: $includes, $eq, $ne, $empty, $notEmpty тощо.
  • Числовий тип: $eq, $gt, $lt, $gte, $lte тощо.
  • Булевий тип: $isTruly, $isFalsy
  • Тип масиву: $match, $anyOf, $empty, $notEmpty тощо.

✅ Система автоматично рекомендуватиме список доступних операторів на основі типу змінної ліворуч, щоб забезпечити логічність конфігурації.

#Значення праворуч

Використовується для порівняння зі змінною ліворуч і є еталонним значенням для визначення, чи виконується умова.

Підтримуваний вміст включає:

  • Константні значення: введення фіксованих чисел, тексту, дат тощо;
  • Контекстні змінні: такі як інші поля поточної форми, поточний запис тощо;
  • Системні змінні: такі як поточний користувач, поточний час, поточна роль тощо.

✅ Система автоматично адаптуватиме метод введення для значення праворуч на основі типу змінної ліворуч, наприклад:

  • Коли ліворуч знаходиться «поле вибору», відображатиметься відповідний селектор опцій;
  • Коли ліворуч знаходиться «поле дати», відображатиметься вибір дати;
  • Коли ліворуч знаходиться «текстове поле», відображатиметься поле для введення тексту.

💡 Гнучке використання значень праворуч (особливо динамічних змінних) дозволяє створювати логіку взаємодії на основі поточного користувача, поточного стану даних та контекстного середовища, забезпечуючи таким чином потужніший інтерактивний досвід.

#Логіка виконання правил

#Спрацювання умови

Коли умова в правилі виконується (необов'язково), дія зміни властивостей, що знаходиться нижче, буде виконана автоматично. Якщо умова не встановлена, правило за замовчуванням вважається завжди виконаним, і дія зміни властивостей виконується автоматично.

#Кілька правил

Ви можете налаштувати кілька правил взаємодії для однієї форми. Коли умови кількох правил виконуються одночасно, система виконуватиме дії відповідно до порядку правил, від першого до останнього, тобто останній результат буде остаточним стандартом виконання. Приклад: Правило 1 встановлює поле як «Вимкнене», а Правило 2 встановлює поле як «Редаговане». Якщо умови обох правил виконуються, поле стане «Редагованим».

Порядок виконання кількох правил має вирішальне значення. Переконайтеся, що під час розробки правил ви чітко розумієте їхні пріоритети та взаємозв'язки, щоб уникнути конфліктів правил.

#Керування правилами

Над кожним правилом можна виконувати такі операції:

  • Власна назва: Встановіть для правила зрозумілу назву для зручності керування та ідентифікації.
  • Сортування: Налаштуйте порядок на основі пріоритету виконання правил, щоб система обробляла їх у правильній послідовності.
  • Видалення: Видаліть правила, які більше не потрібні.
  • Увімкнення/Вимкнення: Тимчасово вимкніть правило, не видаляючи його. Це корисно у випадках, коли правило потрібно тимчасово деактивувати.
  • Дублювання правила: Створіть нове правило, скопіювавши існуюче, щоб уникнути повторного налаштування.

#Про змінні

При присвоєнні значень полям та налаштуванні умов підтримується використання як констант, так і змінних. Список змінних відрізнятиметься залежно від розташування блоку. Розумний вибір та використання змінних дозволяє гнучкіше задовольняти бізнес-потреби. Для отримання додаткової інформації про змінні, будь ласка, зверніться до розділу Змінні.

#Правила взаємодії блоків

Правила взаємодії блоків дозволяють динамічно керувати відображенням блоку на основі системних змінних (наприклад, поточний користувач, роль) або контекстних змінних (наприклад, поточний запис спливаючого вікна). Наприклад, адміністратор може переглядати повну інформацію про замовлення, тоді як роль служби підтримки може бачити лише певні дані замовлення. За допомогою правил взаємодії блоків ви можете налаштовувати відповідні блоки на основі ролей та встановлювати різні поля, кнопки дій та обсяги даних у цих блоках. Коли роль авторизованого користувача є цільовою, система відображатиме відповідний блок. Важливо зазначити, що блоки відображаються за замовчуванням, тому зазвичай потрібно визначати логіку приховування блоку.

👉 Детальніше дивіться: Блок/Правила взаємодії блоків

#Правила взаємодії полів

Правила взаємодії полів використовуються для динамічного налаштування стану полів у формі або блоці деталей на основі дій користувача, головним чином включаючи:

  • Керування станом Відображення/Приховування поля
  • Встановлення, чи є поле Обов'язковим
  • Присвоєння значення
  • Виконання JavaScript для обробки власної бізнес-логіки

👉 Детальніше дивіться: Блок/Правила взаємодії полів

#Правила взаємодії дій

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

👉 Детальніше дивіться: Дія/Правила взаємодії