В проекте есть часть системы (модель) с использованием организации файлов по БЭМ и YModules, которая не зависит от вью и могла бы загружаться асинхронно.
Вопрос, куда прописать зависимость бандла от блоков без DOM-представления модели?
Если прописать модель в BEMJSON виде пустого блока, то у блока page появляется зависимость от модели и асинхронной инициализации визуальных блоков внутри page не происходит.
Не хватает информации, чтобы ответить на вопрос.
Вообще правильных вариантов ответа примерно 2:
bemdecl.js
, то можно прописать в него. Если жеbemdecl.js
генерируется автоматически поbemjson.js
, то такой вариант, очевидно не подходит.Бонус: не очень правильный, но распространенный вариант — прописать в корневой родительский блок (
root
,page
или как-он-там-на-проекте-называется).Модели и вьюхи работают через message-bus к которому асинхронно подключаются. Никак не получалось прописать в page так, чтобы модели и вьюхи асинхронно инициализировались.
Как получилось сделать: 1) сборка на основе bem/project-stub;
2) index.bemjson.js:
3) init-model.js:
4) init-model.deps.js:
Решение получилось совсем неочевидное, но, видимо, более простое решение трудно придумать.