@react_js

Страница 979 из 5115
from
20.02.2017
14:25:28
шутишь что ли?)

ок, тогда 1) учишь английский 2) читаешь аргументы 3) приводишь контраргументы в этом чате ;)

Andrey
20.02.2017
14:26:11
1) Scoped selectors. решаемо на стороне вебпака когда префикс блока это его имя.

Google
Andrey
20.02.2017
14:27:03
Алексей
20.02.2017
14:27:23
Andrey
20.02.2017
14:27:30
2) True rules isolation. - не понял про что пишет автор .

3) Slow selectors взаимоисключается первым пунктом.

3) Code reuse, expressiveness. решается на стороне CSSO и подобными инструментами

когда соединяются одинаковые правила запятой при сборке

5) Refactoring эта же возможность доступна изкоробки в вебпаке. когда подключаешь стили и юзаешь их style.myClass

from
20.02.2017
14:30:25
2) True rules isolation. - не понял про что пишет автор .
мне кажется ты смысл пунктов 1 и 2 спутал

Andrey
20.02.2017
14:30:49
6) Dead code elimination то же что и 5 но если не юзить екстракт-текст плагин

7) Vendor Prefixing автопрефиксер все забыли ?

8) Download size 9) Code sharing. 10) Adoption to environment здесь всё ок ) согласен.

Aleh
20.02.2017
14:33:11
еще можно добавить про типизацию для ts/flow

Andrey
20.02.2017
14:33:13
короч есть плюсы. Но неудобство в работе перевешивает )

Google
Сергей
20.02.2017
14:33:57
from
20.02.2017
14:34:31
погоди, ты вообще не с той стороны на это смотришь Эти пункты — не какие-то _уникальные_ возможности. Почти всего можно добиться с помощью других подходов — того же бема, тех же css-модулей, тех же препроцессоров, тех же бандлеров. Дело в другом. Зачем все эти сложные подходы, если при использовании css-in-js получаешь все эти возможности практически бесплатно? Вот и всё. Это просто для кого-то удобно. Так или иначе на экране мы получим одно и то же, используя хоть бем, хоть pure css, хоть инлайн-стили. Но одни подходы эффективнее других.

в бэме ты "изолируешь" стили вручную (пишешь длинные селекторы), в css-модулях изолирование происходит засчёт автоматического хэширования Результат — один. Способы разные.

from
20.02.2017
14:36:24
Есть вещи которые которые без костылей на cssmodules не сделать
да, есть, тот же обмен переменными в js и css "мирах"

from
20.02.2017
14:36:53
И всё это ради того чтобы не писать 3-4 строчки символов?
3-4 строчки символов это по-моему дохрена, если речь о классе oO

Andrey
20.02.2017
14:37:04
в бэме ты "изолируешь" стили вручную (пишешь длинные селекторы), в css-модулях изолирование происходит засчёт автоматического хэширования Результат — один. Способы разные.
в беме не обязательно писать длинные селекторы. ) можно например вот так https://github.com/CSSSR/csssr-project-template/blob/demo/app/blocks/footer/footer.jade но это уже не реакт-лайк подход

Alex
20.02.2017
14:37:18
3-4 строчки символов это по-моему дохрена, если речь о классе oO
Не о классе же говорю, а о сколько набирается строчек в полном файле.

Pavel
20.02.2017
14:37:18
Есть вещи которые которые без костылей на cssmodules не сделать
приведите пожалуйста кейс, я без сарказма уже, реально не очень понятно

from
20.02.2017
14:38:00
Alex
20.02.2017
14:38:35
Сколько там, одно слово добавить в css и всё. Всё что на странице меняется динамически - отдельно через стиль элемента. Просто, понятно, без лишней хуеты и велосипедов. А если не забывать про комментарии в коде - вообще всё прекрасно.

Ywein
20.02.2017
14:39:12
приведите пожалуйста кейс, я без сарказма уже, реально не очень понятно
полноценные условные операторы в стилях в зависимости от состояния приложения

Сергей
20.02.2017
14:39:58
приведите пожалуйста кейс, я без сарказма уже, реально не очень понятно
достаточно узкий, но не реализуемый легко: создание и просмотр пользовательских тем на лету юзер открывает спец страничку, где видит палитру, крутит палитру и сразу видит изменения всех цветов на сайте

Andrey
20.02.2017
14:40:05
полноценные условные операторы в стилях в зависимости от состояния приложения
это подход к написанию стилей откуда ? из мобильной разработки ?

Google
Artur
20.02.2017
14:40:29
Кажется пора создавать группу css vs cssinjs

Ywein
20.02.2017
14:40:46
from
20.02.2017
14:40:51
а какие неполноценные в js + css-modules?
дублирование переменных для цветов/размеров в css-файлах и в js-файлах

Andrey
20.02.2017
14:40:57
может давайте в редакс запихнём стили? Будем стору редуцировать . для изменения состояния в стилях

Andrey
20.02.2017
14:41:21
это ж очередной подход. Бема же не придумали ещё

Ywein
20.02.2017
14:41:24
дублирование переменных для цветов/размеров в css-файлах и в js-файлах
нет, это кстати в css-modules не нужно. там можно импортировать значения из css в js

Сергей
20.02.2017
14:41:59
[styles.someCssClass]: active && valid
и? jss так и работает

Pavel
20.02.2017
14:42:18
ну я ответил на сообщение о дублировании

Ywein
20.02.2017
14:42:25
а какие неполноценные в js + css-modules?
ну смотри, css-modules позволяют в js доставать значения из css. css-in-js позволяют в css доставать значения из js

from
20.02.2017
14:42:31
[styles.someCssClass]: active && valid
тут переменных-то нет

Сергей
20.02.2017
14:42:35
@panisimov я привел кейс, ты увидел?

Pavel
20.02.2017
14:42:40
так, уже второй человек не знает как работает css-modules и ратует за jss

похоже спор можно реально завершать

Artur
20.02.2017
14:43:06
css-modules тема

from
20.02.2017
14:43:13
я сам css-модулями как раз пользуюсь)

Алексей
20.02.2017
14:43:15
все что я щас увидел это "зачем css-in-js, это большой костыль", а затем в ответ на аргументы кучу костылей вокруг css)

Andrey
20.02.2017
14:43:24
интересно ктонить мерял производительность изменения стилей путём добавления/изменения текста в <style> из js ?

Google
Сергей
20.02.2017
14:43:40
так, уже второй человек не знает как работает css-modules и ратует за jss
то есть ты говоришь, что с помощью css-modules можно из css доставать не только хешированные имена классов, но и значения переменных?

Ywein
20.02.2017
14:44:11
хм, мб, как?
в scss :export { variable: $variable; } в js styles.variable

Ilya
20.02.2017
14:44:11
Cssmodules + inline styles для меняющихся

Pavel
20.02.2017
14:44:25
Сергей
20.02.2017
14:44:39
интересно ктонить мерял производительность изменения стилей путём добавления/изменения текста в <style> из js ?
интересно, кто-нибудь замерял количество труда потраченного на переделку 5-6 кастомных тем от верстальщиков, после хорошего рефакторинга библиотеки компонентов?

Admin
ERROR: S client not available

Andrey
20.02.2017
14:44:49
то есть ты говоришь, что с помощью css-modules можно из css доставать не только хешированные имена классов, но и значения переменных?
ну способ достать значения не проблема. наверняка ля этого и лоадеры есть :) Но зачем ??? — если надо изменить состояние — это БЭМ-модификатором делается

Сергей
20.02.2017
14:44:50
да
ссылку в доку, пожалуйста

Andrey
20.02.2017
14:45:28
а если состояний 100? а если их 100^100
никто не мешает нагенерировать 100 разных состояний и юзить их в жс.

Сергей
20.02.2017
14:45:45
никто не мешает нагенерировать 100 разных состояний и юзить их в жс.
ага а где critical-css? Будешь грузить эту тонну CSS, большая часть которого тупо не юзается?

Andrey
20.02.2017
14:46:19
ага а где critical-css? Будешь грузить эту тонну CSS, большая часть которого тупо не юзается?
генерирование этих состояний можно произвести внутри жса в цикле например

Сергей
20.02.2017
14:46:26
интересно, внезапно понадобился js и что же ты будешь ставить в классах?

Ilya
20.02.2017
14:46:43
Css быстро наберет вес там текст селлекторов огромен, при геометрической прогрессии

Alex
20.02.2017
14:46:59
а если состояний 100? а если их 100^100
Так создай отдельный компонент который управляет всем этим и всё. Зачем какие-то модули дополнительно ставить?

Сергей
20.02.2017
14:47:17
Так создай отдельный компонент который управляет всем этим и всё. Зачем какие-то модули дополнительно ставить?
ха))) на каждый компонент будет ещё 5 компонентов который этим управляют Так будешь писать динамические стили, и постепенно осознаешь, что 90% стилей у тебя: <div style={this.state.styles} />

css-in-js это не большой оверхед над тем что есть но, при подключении модуля ты сразу из коробки получаешь всё что имел раньше + ещё несколько плюшек

Google
from
20.02.2017
14:49:25
в scss :export { variable: $variable; } в js styles.variable
ну это норм вообще! очень удобно

Ywein
20.02.2017
14:49:47
ссылку в доку, пожалуйста
https://github.com/css-modules/icss

Сергей
20.02.2017
14:50:01
в scss :export { variable: $variable; } в js styles.variable
а если динамически надо изменить переменную?

Alex
20.02.2017
14:50:31
ха))) на каждый компонент будет ещё 5 компонентов который этим управляют Так будешь писать динамические стили, и постепенно осознаешь, что 90% стилей у тебя: <div style={this.state.styles} />
Нопе, там должны быть стили только те которыми необходимо управлять. Впрочем тут и начинается, мол, нахуя отделять изменяемые, если можно запихнуть всё в одну коробку и собрать велосипед.

from
20.02.2017
14:50:32
в js же получишь значение, с которым делай что хочешь

Сергей
20.02.2017
14:51:01
то есть?
как мне изменить эту переменную в css чтобы везде изменилось?

Ywein
20.02.2017
14:51:23
а если динамически надо изменить переменную?
ну, я говорю - модули позволяют в js получить css переменные. css-in-js в дополнение к этому позволяют в css получить js переменные

Andrey
20.02.2017
14:51:33
интересно, внезапно понадобился js и что же ты будешь ставить в классах?
цикл с таким телом например variable++; const myModifications = `.${sytle.myClass} { padding-top: ${variable}px; }`; const myCustomClass=`${sytle.myClass} ${sytle.myClass}_${myModifications}`;

from
20.02.2017
14:51:54
как мне изменить эту переменную в css чтобы везде изменилось?
ну это думаю никак, другой подход придётся выбрать, да

Andrey
20.02.2017
14:51:56
ну и аппендить этот стиль к хеаду. как в цсс-модулях завещали

Сергей
20.02.2017
14:52:13
ну и аппендить этот стиль к хеаду. как в цсс-модулях завещали
так блин это и делает jss только в НОРМАЛЬНОМ стиле

Andrey
20.02.2017
14:52:21
и куда ты это засунешь?
у меня нет готового решения на этот счёт..

Alex
20.02.2017
14:52:26
только велосипед то реактивный получается, а не статический
Только один хуй это велосипед ради велосипеда.

Andrey
20.02.2017
14:52:45
так блин это и делает jss только в НОРМАЛЬНОМ стиле
жсс заставляет этот звиздец делать во всём проекте а не там где надо

Сергей
20.02.2017
14:53:08
жсс заставляет этот звиздец делать во всём проекте а не там где надо
отнюдь только там где хочешь никто не заставляет тебя совмещать это с CSSModules

Страница 979 из 5115