ReflexJS для внешнего интерфейса
В 2016 году, когда React и Angular достигли своей славы, мне пришлось создавать проект с нуля, и я не хотел использовать какой-либо ранее существовавший фреймворк. Поэтому я решил разработать что-то свое. Я назвал его Reflex JS, который представляет собой легкую архитектуру управления событиями.
Reflex имеет пять основных API:
- подписываться
- отправлять
- stream_register
- toggleНейроны
- стикеры (прикрепитьОбратный звонок)
Давайте поговорим о них один за другим.
подписываться
subscribe фактически подписывается на связанный список событий и действий. Он принимает два параметра
reflexes.subscribe(handlers, "basic_actions");
- обработчики — func
- handler_name — строка
отправлять
отправить действие, и будут запущены его побочные эффекты, которые упомянуты в его обработчиках
reflexes.dispatch({id: "PINCH_ALERT", sender_name: name, sender_email:email, message_to_send:msg});
stream_register
stream_register позволяет зарегистрировать глобальное событие в обработчике
reflexes.stream_register(sensors, "click", "view_clicks");
toggleНейроны
toggleNeurons вызывается, когда вам нужно выполнить исключение, например, скрыть меню при нажатии на что-либо, кроме этого меню.
reflexes.addTogglers(toggleNeurons, "views_togglers");
наклейки
Когда вам нужно прикрепить обратный вызов для определенного события, такого как рендеринг на data_load, тогда мы используем стикеры
reflexes.attachCallback("RENDER_PAGE", "DATA_LOADED");
Это были API-интерфейсы ReflexJS, но давайте поговорим о том, как они на самом деле работают и как мы структурируем наш код. У нас есть запас действий, которые нужно запустить. Каждое действие имеет идентификатор и определенные шаги, которые необходимо выполнить. Затем мы можем зарегистрировать действия, используя метод подписки. Позже, когда вам нужно будет вызвать это действие, просто отправьте действие с его идентификатором и любыми данными (полезной нагрузкой), если вы хотите пройти.
Вы можете прикрепить любое действие после вызова любого другого действия, используя метод attachCallback, который также известен как стикеры.
Вы также можете управлять событиями своего окна с помощью Reflex JS, используя stream_register, который позволяет вам организовать все действия, которые необходимо выполнить при запуске различных событий.
Вы можете проверить кодовую базу здесь: https://github.com/shashankduhan/reflex-js
Найдите меня здесь: https://www.toptal.com/front-end
Спасибо за чтение.