Какой шаблон использовать для связки компонентов интерфейса на чистом JavaScript?
Ребята, пишем небольшой, но объемный проект, не используя фреймворки для структуризации кода. А я, честно говоря, так давно не писал чистый JS, что забыл про то, как структурировать правильно код. Проблема в том, что проект, что мы пишем, включает в себя жутко много элементов интерфейса(слайдеры, прокрутки, канвасные графики, элементы с состоянием, небольшие анимации), каждый из которых - отдельная история, к которой привязаны коллбеком разные события и состояния. Т.е. элементов много и все они - кастомные. Я пытался вынести все элементы интерфейса в объект в отдельную переменную controlls = {переменная : document.querySelector("#наш элемент интерфейса"}; , но по итогу такая связка не позволяет удобно управлять состояние и событиями элемента, которые хочется повесить на него.
Заранее благодарен за совет, который поможет использовать правильный метод решения этой проблемы.