Как к примеры вы разделяете блоки самого сайта и админки для сайта написанных на БЭМ, сейчас у меня это 2 разных проекта (основанных на project-stub, тоесть это 2 копии project-stub для публичной части и админки), думаю как их можно соеденить
Как к примеры вы разделяете блоки самого сайта и админки для сайта написанных на БЭМ, сейчас у меня это 2 разных проекта (основанных на project-stub, тоесть это 2 копии project-stub для публичной части и админки), думаю как их можно соеденить
Кончено можно. Я кладу общее в либы и подтягиваю их в зависимостях. И на конкретном проекте всегда можно будет что-то переопределить или дописать
Общие блоки я конечно тоже выделяю в либы и подтягиваю на проектах.
Вопрос немного в другом. Например у тебя есть проект(сайт) и админка к нему, которые выглядят совершенно по разному, у каждого своя шапка и футер и т.п. Т.е по запросам site.com/admin/* я попадаю в админку у которого свое отображение, а по адресам site.com/* я попадаю в публичную часть у которого совсем другое отображение.
Вопрос как мне разделить блоки двух разных проектов(сайт и админка к нему).
Можно сделать бандл admin и туда складывать про админку.
@4ok Вы используете bem-core и bem-components?
Да, использую bem-core и bem-component.
Сделать бандл admin это само собой.
У меня все блоки сейчас лежат в одной папке - desktop.blocks, но если и создать папку для блоков внутри папки бандлов(desktop.bundles/site/blocks, desktop.bundles/admin/blocks), то смотреть любой из бандлов при сборке будет в обе эти папки, ведь их пути придется прописать в make.js
нет, если сделать desktop.bundles/site/blocks и desktop.bundles/admin/blocks, то ничего прописывать не нужно и бандлы будут собираться из общих блоков + своих собственных.
я бы предложил:
и в зависимости от того используются ли в админки блоки с основного сайта настроить список уровней для сборки
admin/bundles
А чем плох вариант предложенный tadatuta? Мне он показался более логичным, если работает как он описал
в варианте @veged более четкое разделение. например, можно деплоить админку отдельно только во внутренней сети или полностью отказаться от использования блоков проекта при сборке админки.