Так как у нас сервер на ноде, возникает вопрос, насколько оправданно собирать bemtree бандлы с bem-xjst внутри. Кажется проще подключить их на старте приложения и досыпать шаблоны из собранных бандлов через compile. Что думаете?
Так как у нас сервер на ноде, возникает вопрос, насколько оправданно собирать bemtree бандлы с bem-xjst внутри. Кажется проще подключить их на старте приложения и досыпать шаблоны из собранных бандлов через compile. Что думаете?
compile — это затратная операция, эффективнее собрать все заранее и не тратить на это время в продакшене.
@tadatuta @miripiruni кажется этого уточнения не хватает в доке к bem-xjst
@Guria про это написано. См последнее предложение в этом разделе: https://github.com/bem/bem-xjst/blob/master/docs/ru/3-api.md#Добавление-шаблонов
@miripiruni там предлагается использовать метод generate. Ок. Тот же подход но с методом generate имеет право на существование?
прочитал внимательнее что там ядро подтягивается...
То, что
compile
«затратная» не так страшно страшно как вам кажется:compile
будет выполнятся десять-двадцать миллисекунд.@tadatuta Кстати говоря, если собирать бандлы как обычно, там все шаблоны все равно через compile прогоняются. Так что мы теряем?
@miripiruni формулировка от @tadatuta делает акцент на медленности метода
compile
и не желательности его использования в продакшн, что заметно отличается от "Если вам нужно собрать все шаблоны в бандл, то эффективнее использовать метод generate."А вот комментарий на счёт абсолютных величин полезен, спасибо.
@kompolom а ведь и правда, кроме того можно заставить compile использовать переданную функцию с шаблонами как есть, если правильно составить список аргументов.
@Guria так все есть уже. Открываю собранный бандл:
Я про то же самое в рантайме. Билд шаблонов с помощью
bem-loader
: https://github.com/awinogradov/react-bl/blob/master/webpack.config.js#L5-L10 Использованиеcompile
в runtime https://github.com/awinogradov/react-bl/blob/master/src/provider/provider.js