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

Введение

Что такое FlowEngine?
Связь FlowEngine и плагинов
Быстрый старт
План обучения

Руководство

Регистрация FlowModel
Создание FlowModel
Рендеринг FlowModel
Поток событий и конфигурация FlowModel
Персистентность FlowModel
Жизненный цикл FlowModel
Система контекста FlowModel
Реактивный механизм: Observable
FlowModel vs React.Component
Точки расширения плагина RunJS

Определения

ModelDefinition
FlowDefinition
EventDefinition
ActionDefinition
StepDefinition
Next PageЧто такое FlowEngine?
Уведомление о переводе ИИ

Эта документация была автоматически переведена ИИ.

#Поток событий

В FlowEngine все компоненты интерфейса являются событийно-ориентированными. Поведение, взаимодействие и изменения данных компонентов запускаются событиями и выполняются в рамках потока.

#Статический и динамический потоки

В FlowEngine потоки можно разделить на два типа:

#1. Статический поток

  • Определяется разработчиками в коде;
  • Применяется ко всем экземплярам класса модели;
  • Обычно используется для обработки общей логики класса модели;

#2. Динамический поток

  • Настраивается пользователями через интерфейс;
  • Действует только для конкретного экземпляра;
  • Часто используется для персонализированного поведения в конкретных сценариях;

Проще говоря: статический поток — это логический шаблон, определённый на уровне класса, тогда как динамический поток — это персонализированная логика, определённая на уровне экземпляра.

#Правила связывания и динамический поток

В системе конфигурации FlowEngine существует два способа реализации логики событий:

#1. Правила связывания

  • Представляют собой инкапсуляцию встроенных шагов потока событий;
  • Проще в настройке и более семантичны;
  • По сути, это упрощённая форма потока событий.

#2. Динамический поток

  • Обладает полными возможностями настройки потока;
  • Позволяет настраивать:
    • Триггер (on): определяет, когда запускать;
    • Шаги выполнения (steps): определяют логику выполнения;
  • Подходит для более сложной и гибкой бизнес-логики.

Таким образом, Правила связывания ≈ Упрощённый поток событий, и их основные механизмы идентичны.

#Согласованность FlowAction

Как Правила связывания, так и Потоки событий должны использовать один и тот же набор FlowAction. Это означает, что:

  • FlowAction определяет действия, которые могут быть вызваны потоком;
  • Оба используют единую систему действий, а не реализуют две отдельные;
  • Это обеспечивает повторное использование логики и единообразное расширение.

#Иерархия концепций

На концептуальном уровне основная абстрактная связь FlowModel выглядит следующим образом:

FlowModel
 └── FlowDefinition
      ├── FlowEventDefinition
      │     ├── Глобальные события
      │     └── Локальные события
      └── FlowActionDefinition
            ├── Глобальные действия
            └── Локальные действия

#Описание иерархии

  • FlowModel Представляет собой сущность модели с настраиваемой и исполняемой логикой потока.

  • FlowDefinition Определяет полный набор логики потока (включая условия запуска и шаги выполнения).

  • FlowEventDefinition Определяет источник запуска потока, включая:

    • Глобальные события: например, запуск приложения, завершение загрузки данных;
    • Локальные события: например, изменение поля, нажатие кнопки.
  • FlowActionDefinition Определяет действия, которые может выполнять поток, включая:

    • Глобальные действия: например, обновление страницы, глобальные уведомления;
    • Локальные действия: например, изменение значений полей, переключение состояния компонента.

#Итог

КонцепцияНазначениеОбласть действия
Статический поток (Static Flow)Логика потока, определённая в кодеВсе экземпляры XXModel
Динамический поток (Dynamic Flow)Логика потока, определённая в интерфейсеОтдельный экземпляр FlowModel
FlowEventОпределяет триггер (когда запускать)Глобальный или локальный
FlowActionОпределяет логику выполненияГлобальный или локальный
Правило связывания (Linkage Rule)Упрощённая инкапсуляция шагов потока событийНа уровне блока, действия