Обработка событий
Назначение
Обработка событий - это невидимый для пользователя на web странице компонент, представляющий собой визуальный инструмент для аналитика, с помощью которого аналитик выстаивает алгоритм динамического управления функционированием web-страницы, основанный на отслеживании событий, происходящих на ней во время взаимодействия с пользователем в режиме исполнения (runtime mode). Динамическое управление подразумевает анализ вариантов возможных событий и действий пользователя с интерфейсом Системы, проверка условий, в которых происходят эти события и действия, предварительное составление последовательности необходимых манипуляций, которые должна предпринять Система в ответ на каждое из возможных воздействий пользователя.
Аналитик, используя компонент Обработка событий при проектировании web-страницы, получает в свое распоряжение рычаги управления свойствами, параметрами и настройками, а также значениями визуальных компонент, которые первоначально задаются в Инспекторе редактора страниц. Кроме того, компонент позволяет использовать скрытые в Инспекторе методы управления компонентами.
Компонента может располагаться в любом удобном для аналитика месте в составе дерева компонентов web странице.
Компонента Обработка событий находится в разделе Компоненты - Без категории - Обработка событий.
Свойства
| Наименование свойства | Назначение свойства | Принимаемые значения |
|---|---|---|
| Когда | Позволяет указать событие (перечень событий) которые нужно отследить Системе на экранной форме.
Добавление каждого из возможных событий осуществляется нажатием на кнопку и перетаскиваем соответствующего визуального компонента из иерархии страницы в появившееся поле. Так происходит связывание процесса ожидания события с конкретной компонентой, от которой это событие ожидается. После указания субъекта события (компоненты из структуры страницы), следует указать какое именно событие от выбранной компоненты следует ожидать Системе - в следующем открывшемся поле выбрать это событие из списка всех возможных событий этой компоненты. Если добавлено несколько событий, то они автоматически соединяются между собой оператором ИЛИ (то есть система отслеживает появление хотя бы одного из них) и поменять этот оператор соединения событий нельзя. |
|
| Если | Позволяет задать условия, которые необходимо проверить системе при срабатывании механизма слежения за предписанным в предыдущем пункте событием.
Принцип формирования каждого конкретного условия идентичен принципу формирования события, описанному в предыдущем пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, условие по которой требует проверки, а затем в следующем окне из предустановленного списка выбирается настройка, параметр, свойство или значение компоненты, которые необходимо проверить. Поскольку каждое условие чаще всего задается для сравнения текущего состояния компоненты с каким то заранее продуманным значением, то конструктор условий позволяет задать значение для сравнения либо явно (числом, строкой и т.д.), либо сослаться на значение другой компоненты на странице, для чего снова показывает поле, в которое можно перетащить из дерева другой интересующий компонент и так же воспользоваться методом для получения уже его значения для сравнения. Как правило, для получения значений текущей настройки, параметра, свойства или фактического значения используются методы компонент, которые перечисляются в предлагаемом списке. При визуальном формировании условия Система позволяет указать оператор сравнения между двумя значениями, при этом предлагаются операторы сравнения, релевантные используемым типам данных. Значение, с которым происходит сравнивание, может быть выбрано одним из трех типов:
Визуальный конструктор позволяет аналитику выстраивать условия любой сложности и вложенности, разделять условия проверок на отдельные группы и явно выбирать оператор соединения как групп между собой, так и отдельных условий в каждой группе. Формирование условий может и не выполняться при настройке, тогда Система при обнаружении события сразу перейдет в секции “Тогда” визуального конструктора алгоритма. |
|
| Тогда |
позволяет задать последовательность действий с одной или несколькими компонентами в случае, когда случилось отслеживаемое событие и выполнены заданные выше условия проверки вмомент происхождения события. Если условия проверки не заданы, то Система сразу после обнаружения факта совершения ожидаемого события выполняет действия, описанные в этом пункте. Принцип формирования каждого конкретного действия в списке действий идентичен принципу формирования события, описанному в первом пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, над которой следует провести определенную операцию, а затем в следующем окне из предустановленного списка выбирается метод, который необходимо применить к компоненте и значение, которое является входящим аргументом для этого метода.Значение, которое передается в выбранный метод, может быть выбрано одним из трех типов:
Все перечисленные в списке этого пункта действия выполняются через оператор "И", то есть выполняется каждое из заложенных действий. Изменить этот оператор соединения действий нельзя. Например, “Числовое поле”. “Задать видимость” == “True” Последовательность исполнения Системой инструкций в данном разделе не всегда соответствует порядку их расположения в конструкторе. В общем случае, порядок выполнения инструкций выбирается браузером произвольно. |
|
| Иначе |
позволяет задать последовательность действий с одной или несколькими компонентами в случае, когда случилось отслеживаемое событие, а набор условий, заданных выше, в момент происхождения события не является истинным. Принцип формирования каждого конкретного действия в списке действий идентичен принципу формирования события, описанному в предыдущем пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, над которой следует провести определенную операцию, а затем в следующем окне из предустановленного списка выбирается метод, который необходимо применить к компоненте и значение, которое является входящим аргументом для этого метода.Значение, которое передается в выбранный метод, может быть выбрано одним из трех типов:
Все перечисленные в списке этого пункта действия выполняются через оператор “И”, то есть выполняется каждое из заложенных действий. Изменить этот оператор соединения действий нельзя. Последовательность исполнения Системой инструкций в данном разделе не всегда соответствует порядку их расположения в конструкторе. В общем случае, порядок выполнения инструкций выбирается браузером произвольно. |
Функции
Определить роли текущего пользователя
Определить права текущего пользователя
Методические рекомендации по применению
Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:
Другое
Для включения логирования ActionController в prod сборке приложения необходимо выполнить команду в консоли браузера
window.dev_mode=true;
Часто задаваемые вопросы
| Вопрос | Ответ |
|---|---|
| В чем преимущества и гибкость компоненты Обработка событий? | С использованием совокупности компонент Обработка событий, расположенных на странице,страница сама по себе может стать самостоятельной микросистемой (подмодулем) со своей логикой работы, встраивающейся в общую логику всей системы. Визуальное представление возможности строить алгоритмы посредством нескольких кликов манипулятором “мышь” и перетаскиванием нужных компонентов из иерархии страницы позволяет аналитику избежать необходимости привлечения писателей программного кода для “оживления” страницы. После сборки и запуска приложения платформа самапревратит заданные визуально алгоритмы в соответствующий код, который будет исполняться браузером пользователя. |
| Существует ли возможность задать порядок рассмотрения и исполнения Системой алгоритмов из разных компонентов Обработка событий между собой? | Нет, нельзя. |
| Можно ли поставить рассмотрение и исполнение алгоритма из одного компонента Обработка событий в зависимость от алгоритма из другого компонента Обработка событий? | Нет, нельзя. |
| Как отследить исполнение и понять какие компоненты Обработка событий сработали на странице и по какому алгоритму они сработали | Следует открыть в браузере “Инструменты разработчика” (обычно клавиша F12), перейти на вкладку “Консоль” и изучить расположенные там записи.В консоль выводятся информация ТОЛЬКО ОБ ОТРАБОТАВШИХ компонентах Обработка событий (Условия из раздела ЕСЛИ выполнились). Соответственно, выводится Satisfied condition for ActionController если выполнился раздел ТОГДА и Not satisfied condition for ActionController если раздел ИНАЧЕ. |
