Size: a a a

2020 June 14

yW

yarastqt World in БЭМ
Так же можно собирать отдельный бандл css для старых браузеров
источник

АН

Авроамэриканец Начрэ... in БЭМ
yarastqt World
Тут все зависит от проекта, если на проекте используется одна тема, то переменные раскрываются без проблем, если две темы, то тут чуть сложнее, для этого я написал postcss-плагин (https://github.com/yarastqt/postcss-theme-fold), который обрабатывает такие кейсы.
Я пока что ещё не знаком с postcss, но как я понял, это такой инструмент для обработки css на стадии сборки.

С одной темой я понял мысль, css свойства можно раскрыть и скомпилировать в чистый текст. А если тем несколько и они объявляют css свойства, то в ie вы используете одну тему и при переключении, например, перезагружаете страницу, подключая другой css файл для старых браузеров в котором css переменные приведены к тексту?
источник

yW

yarastqt World in БЭМ
Не совсем, там есть несколько нюансов. Но в целом там просто создается копия селекторов с разными раскрытыми переменными и все это дополняется миксами для компонентов
источник

yW

yarastqt World in БЭМ
Input:
/* Theme/_color/Theme_color_default.css */
.Theme_color_default {
 --color: #fff;
}

/* Theme/_size/Theme_size_default.css */
.Theme_size_default {
 --size: 10px;
}

/* Button/Button.css */
.Button {
 color: var(--color);
 font-size: var(--size);
 box-sizing: border-box;
}
источник

yW

yarastqt World in БЭМ
Output:
.Button {
 box-sizing: border-box;
}

.Theme_color_default .Button {
 color: #fff;
}

.Theme_size_default .Button {
 font-size: 10px;
}
источник

yW

yarastqt World in БЭМ
с 2 темами соответственно будет чуть больше селекторов
источник

yW

yarastqt World in БЭМ
в основном тема меняет только цветовую палитру, так что селекторов становится не особо больше
источник

АН

Авроамэриканец Начрэ... in БЭМ
О, я понял. Выглядит удобно, спасибо
источник
2020 June 16

EB

Evgeniy Baranov in БЭМ
Вчера посмотрел запись субботника как серп с bemxjst на react переезжает.
За кадром осталось как организована сборка проекта в переходный период.
Может кто-то прояснить, как в проект на классическом стеке добавить реакт?
источник

yW

yarastqt World in БЭМ
Там по сути две сборки, одна для реакта, вторая для классического стека
источник

yW

yarastqt World in БЭМ
Все собирается в мини-приложения
источник

yW

yarastqt World in БЭМ
и встравается в существующий проект
источник

yW

yarastqt World in БЭМ
+ настроение общение через какую-то шину
источник

yW

yarastqt World in БЭМ
Если смотреть на классическое-реакт приложение, то у тебя там 1 entry
источник

yW

yarastqt World in БЭМ
на серпе этих entry много)
источник

EB

Evgeniy Baranov in БЭМ
yarastqt World
и встравается в существующий проект
Я не совсем понимаю как результаты двух сборок собираются в одну html страницу с css+js
источник

yW

yarastqt World in БЭМ
Не совсем понятно как страница связана с результатом сборки, сборка тебе отдает js+css бандл
источник

yW

yarastqt World in БЭМ
подключаешь на странице с i-bem результат сборки реакт-приложения
источник

yW

yarastqt World in БЭМ
и все
источник

yW

yarastqt World in БЭМ
можно настроить наверное через webpackhtmlplugin
источник