Size: a a a

Веб-компоненты

2017 October 18

MB

Mikhail Bashkirov in Веб-компоненты
душещипательная статья от автора спецификации CSS Mixins
http://www.xanthir.com/b4o00
источник

MB

Mikhail Bashkirov in Веб-компоненты
отвечает на вопросы, почему ребята в команде Polymer не осилили полифилл
источник
2017 October 26

MB

Mikhail Bashkirov in Веб-компоненты
вроде год уже веб-компоненты курю, а только сейчас обнаружил такой юз-кейс
https://github.com/Polymer/shop/blob/master/src/shop-select.html

внимание, это style-модуль, но применяется будто обычный компонент
тем самым мы обьявляем этот модуль именно там где находится код, использующий стили из него

вроде просто, но вот ни разу нигде не видел такого в продакшене там где работаю
источник

MB

Mikhail Bashkirov in Веб-компоненты
вот тут примеры использования
https://github.com/Polymer/shop/blob/master/src/shop-detail.html#L158
источник

И

Иван in Веб-компоненты
Mikhail Bashkirov
вроде год уже веб-компоненты курю, а только сейчас обнаружил такой юз-кейс
https://github.com/Polymer/shop/blob/master/src/shop-select.html

внимание, это style-модуль, но применяется будто обычный компонент
тем самым мы обьявляем этот модуль именно там где находится код, использующий стили из него

вроде просто, но вот ни разу нигде не видел такого в продакшене там где работаю
А эти стили вообще кому-нибудь видны? Либо изоляция не изоляция, либо я чего-то не понимаю. /* что не удивительно, так как в веб-компонентах я слегка теоретичен */
источник

MB

Mikhail Bashkirov in Веб-компоненты
насколько я вижу по рантайме, там не создается shadow dom
источник

MB

Mikhail Bashkirov in Веб-компоненты
поэтому стили протекают вниз, но не вверх
источник

MB

Mikhail Bashkirov in Веб-компоненты
идеальный юзкейс для того, чтобы вместо импортирования стилей в какой-нибудь относительно большой компонент (страница или форма, например), использовать вместо этого так, чтобы ограничить зону их видимости
источник

MB

Mikhail Bashkirov in Веб-компоненты
тут надо для начала объяснить что такое стилевой модуль в данном контексте, но там по ссылкам выше должно быть понятно
источник

MB

Mikhail Bashkirov in Веб-компоненты
понял, что выше про shadow dom ерунду сказал
пойду ка дальше покурю, сам нихрена не понимаю как эта магия работает
источник

MB

Mikhail Bashkirov in Веб-компоненты
ну то есть shadow dom и правда не создается, это четко видно в рантайме, но как стили применяются я не понимаю
возможно это фича Polymer, скорее всего даже
источник

И

Иван in Веб-компоненты
Ну вроде на саммите в одном из последних докладов в конце вскользь упомянута "проделанная работа" в сторону всяких инклудов и полиморфизмов компонентов, как логики так и стилей... Может это оно? 😏
источник

MB

Mikhail Bashkirov in Веб-компоненты
в каком докладе про это было?
источник

MB

Mikhail Bashkirov in Веб-компоненты
ахах) в общем
я пропустил один принципиальный момент
а пропустил, потому что внутри модуля с названием shop-select определены селекторы с этимж же элементом
а всего то надо было сюда посмотреть
https://github.com/Polymer/shop/blob/master/src/shop-detail.html#L24
источник

MB

Mikhail Bashkirov in Веб-компоненты
в общем путанная имплементация
в итоге никакой магии, никаких новых фич
но подход занятный, надо принимать на вооружение
источник

И

Иван in Веб-компоненты
эмн... ключевое слово "вскользь"... (хотя как я посмотрел сейчас, ни хера не вскользь 😜) https://www.youtube.com/watch?v=rvpJ5O0W_6A с десятой минуты манипулирование темплейтами, с шестнадцатой стилями... скорее всего это не об этом, но мне уже отступать некуда 😊
источник
2017 October 27

F

F_I_N in Веб-компоненты
вроде же стили которые в компоненте они как раз и в шадов попадают, в этом 1 из профитов web components, не тащутся стили в глобал а только в рамках компонента юзаются.
источник
2017 October 28

MB

Mikhail Bashkirov in Веб-компоненты
Все так. Но есть оверхед на созданте ShadowDOM, поэтому иногда пытаюсь обойтись без него и при этом решить проблему изоляции. Ничего нового в этом нет. Просто вопрос каждого конкретного случая. Мне кажется пример выше хоть и сильно ограничен в применении, но лишнмй раз показывает, что старые подходы вместе с новыми могут хорошо сосуществовать
источник
2017 November 01

l(

lolmaus (Andrey Mikhaylov) in Веб-компоненты
Я тут задумался об изоляции стилей: хочу добиться, чтобы стили отдельно взятого компонента не только не протекали в приложение, но и внешние стили вроде div {color: red} не протекали в компонент.

Без Shadow DOM можно этого добиться?
источник

l(

lolmaus (Andrey Mikhaylov) in Веб-компоненты
Делать CSS reset каждого элемента не вариант, специфичность селекторов становится неюзабельной. :(
источник