Продолжаю погружение. Давно мучает вопрос, что именно делает 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-examples
enb-bem-specs
enb-bem-tmpl-specs
enb-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, но уточни, пожалуйста, в чём нужна кастомизация.