Open Guria opened 9 years ago
@Guria Прямо сейчас в рантайме переопределять XJST-шаблоны можно только в dev-режиме, т.к. для production предполагается этап компиляции.
Влад @vkz, вы не продвинулись в доопределении шаблонов в рантайме?
Кажется временно можно использовать связку BEMTREE
+ BH
, тогда появится возможность доопределять хотя бы шаблоны представления.
Кстати, почему в вопросах типа "что использовать вместо bemtree
для шаблонов bh
?" никогда не встречался ответ "Можно использовать bemtree
"?
@Guria Можно, конечно. Я был уверен, что это достаточно очевидно. Тут скорее возникает вопрос в том, что пользователю придется уметь и XJST и BH, все равно остается этап компиляции и, кмк, теряется смысл в том, чтобы не использовать BEMHTML. Хотя, конечно, довод про переопределение шаблонов в рантайме железный.
@tadatuta @Guria а вы встречали случаи, кроме описанного выше, когда может пригодиться переопределение шаблонов в рантайме?
@apsavin в общем случае это может быть полезно, когда хочется чанками догружать в рантайм дополнительную функциональность (скажем, для жирного SPA) и не хочется гонять базовые шаблоны BEMHTML для каждого каждого такого бандла. Я ничего больше придумать не могу.
@tadatuta вариант, хотя, кажется, на базовых шаблонах много не сэкономишь.
@apsavin если догружаемый бандл один — да. а если их пару десятков, то уже и повод задуматься.
+
за жирный SPA. Этот вопрос нам будет очень актуален.
На самом деле, в случае жирного SPA - еще большой вопрос, как лучше для пользователя, подождать при открытии и потом пользоваться очень быстро (никто вроде не жалуется на gmail) или постоянно подгружать какие-то кусочки шаблонов и скриптов.
Ну шаблоны действительно не самая тяжёлая часть, а js можно и в динамике подгружать. Однако первоначальный кейс всё равно актуален.
@Guria первоначальный - да, безусловно.
@apsavin лучше всего найти компромис: см. игры от близзард, они жирные, но не требуют 100% загрузки для запуска. Там есть такое понятие, как оптимальный объем, обязательный к наличию «под рукой», а вся лирика догружается «потом» или в процессе работы.
@zxqfox это все в любом случае может меняться в зависимости от проекта.
Спам фильтр радостно сожрал оповещение. Сорри, что сразу не ответил. Работа над дозагрузкой ведется. Как будет, чем порадовать, дам знать.
Я хочу предоставлять компоненты написанные на БЭМ для проектов, которые больше нигде БЭМ не используют. При этом я хочу предоставить им возможность до-/пере- определять шаблоны компонентов. В
bh
это реализуется приблизительно следующим образом:Как такого же эффекта можно достичь с шаблонами
bemtree
/bemhtml
?