Пишу код по БЭМ, скрипты каждого блока в отдельном файле. Как мне правильно связать два блока? Например, изменять состояние инпута (отдельный блок) из формы (отдельный блок). Пока есть мысль использовать классы, но тоже не понятно — придется создавать экземпляр класса на каждый инпут в форме.
Если можно, примеры или статьи на тему.
Hyubert, проблема в понимании взаимодействия блоков. Например, я создаю класс Input, у которого есть метод setDisable(), делающий инпут неактивным. И есть другой блок — форма. Форма включает в себя 20 инпутов. И вот как мне при событиях формы (например, ошибка валидации) сделать все инпуты неактивными? Создать 20 экземпляров класса Input и forEach их перебрать, чтобы вызвать setDisable()?
Женя, внизу уже дали неплохой совет, единственное что я бы дополнил - используйте дополнительный лейаут, как родительский блок через который и будет происходит взаимодействие двух компонентов.
Я только учусь, но полагаю, вы можете создать отдельный модуль с нужным вам обработчиком событий, который используется в разных других модулях (которые друг о друге не знают).
И для видимости записываете его в глобальную область видимости Windows.