Продолжаю погружение. Давно мучает вопрос, что именно делает enb-magic-platform. Какова его роль в bem-core/bem-components. Должен ли я его хотеть для своей библиотеки.
Продолжаю погружение. Давно мучает вопрос, что именно делает enb-magic-platform. Какова его роль в bem-core/bem-components. Должен ли я его хотеть для своей библиотеки.
/cc @blond
@Guria, если совсем вкратце, то само по себе ENB умеет собирать только ноды, которые уже есть на файловой системе, и не умеет ноды, которые могут появляться в процессе сборки.
Для того, чтобы это стало возможным был написан enb-magic-fatory. Если нужно подробнее — можно попробовать разобраться по jsdoc внутри, или спрашивать тут.
А
enb-magic-platformэто тот жеmake+serverиз ENB, но который умеет работать со специальными__magic__тасками, а если надо деградировать до обычных задач сборки.enb-magic-fatoryиспользуется в пакетах, где нужно собирать сеты (sets), а именно в:enb-bem-examplesenb-bem-specsenb-bem-tmpl-specsenb-bem-docs.Поэтому
enb-magic-platformнужен там, где используются эти пакеты.Как минимум
enb-bem-specs,enb-bem-tmpl-specsбыло желание использовать. Придётся разбираться, хотя пока не очень легко даётся.@Guria Для того, чтобы использовать
enb-bem-specsиenb-bem-tmpl-specs— разбираться вenb-magic-*пакетах не нужно.Как использовать:
@blond, а когда я в make объявляю технологию с выходом в таргет N и технологию, для которой вход - это N, а выход - M - это разве не сборка нод, которые появляются в процессе сборки? Или я что-то неправильно понимаю?
@apsavin, ты говоришь о сборке таргетов в рамках уже существующей ноды. И какие ноды, и какие таргеты будут в итоге известно до момента сборки.
Речь, о:
Пример, из жизни:
Но, если в консоли написать следующее:
То всё хорошо соберётся:
Если при этом в
make.jsзадекларировать сборку нод*.examples/*/*как сборку обычных страниц, то в примерах соберётся не только BEMJSON, но и HTML, css, js и т.д.Понятно, спасибо. В самом деле magic.
@blond
enb-bem-specsиenb-bem-tmpl-specsпоставляются со своимnodeconfigurator. Можно ли использовать эти модули если у меня процесс сборки немного отличается?Подозреваю, что для
enb-bem-tmpl-specsможно, а дляenb-bem-specsнельзя.@Guria, но уточни, пожалуйста, в чём нужна кастомизация.