Size: a a a

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

2017 December 07

ДД

Димон Дурак in Веб-компоненты
у мну практического опыта хождения по этим граблям нет, но прям везде чувствую - очень нужно знать про хаки, прежде чем делать что-то более-менее серьёзное
источник

MB

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

MB

Mikhail Bashkirov in Веб-компоненты
или поискать другой
источник

MB

Mikhail Bashkirov in Веб-компоненты
этот ну прямо на ладан дышит
источник
2018 January 30

MB

Mikhail Bashkirov in Веб-компоненты
в последнее время много стало критики против ShadowDOM, особенно в контексте скорости и пререндеринге на стороне сервера (невозможности такого)
источник

MB

Mikhail Bashkirov in Веб-компоненты
нашлась старая статья Роба на эту тему, зачекайте
https://medium.com/dev-channel/the-case-for-custom-elements-part-1-65d807b4b439
источник

MB

Mikhail Bashkirov in Веб-компоненты
она про то, что можно и нужно юзать Custom Elements без ShadowDOM
источник

MB

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

α

αβλω in Веб-компоненты
плюсую. сейчас рассматриваем переход на веб-компоненты и вопросы возникают те же самые
источник

И

Иван in Веб-компоненты
Ой, но простите, а какой тогда смысл, если вы всё наружу? Где профит? В чём отличие от... Да от всего, что было во вью-рендерениге до вас, и было там дольше вас?
источник
2018 January 31

MB

Mikhail Bashkirov in Веб-компоненты
комментарии пишу, статью не читаю?
источник

И

Иван in Веб-компоненты
я прочитал статью... а что нового может быть прорывного чего я не знал в статье 2016 года? и что может быть непонятного в термине "Custom Elements без ShadowDOM"?
источник

И

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

MB

Mikhail Bashkirov in Веб-компоненты
почитайте внимательнее, так как около половины статьи именно прямо отвечает на этот вопрос
источник

MB

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

MB

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

MB

Mikhail Bashkirov in Веб-компоненты
в общем у нас много проблем с A11Y, так как создать никакими ухищрениями связь между элементами в разныз shadow-узлах не получается
мы стали пихать все что можно в Light DOM

далее нас никак не устраивает производительность полифилла ShadyDOM в IE11, который еще года 3-4 придется поддерживать

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

без ShadowDOM теряются 2 главные фичи - изоляция стилей и slot/content projection

первое делается с полприсяда на любом любимо CSS-in-JS решнии и получает бесплатно все его бонусы, как то явный референс стилей из кода (решние проблемы мертвого/лишнего CSS)... мы думали даже внутри ShadowDOM начать это юзать, но там оно не заводится в силу очевидных причин

а вот со slot чуть сложнее, но тоже все решаемо
мы щас с lit-html экспериментируем и там пока нет аналога, может в будщем будет, но даже если нет, можно и по другому эту фичу реализовать, хоть и не так красиво

подитожу: пора после всех экспериментов скрещивать лучшее из всех миров, и похоже со стороны веб-компонентов пока что лучшее - это спека Custom Elements
источник

SE

Stanislav Eremenko in Веб-компоненты
Там, кстати, в следующем релизе vue-cli подвезут свборку в веб-компоненты. Правда, пока не понятно что это на самом деле и как оно работает.
з.ы. кастомные элеметы с плагином можно писать уже сейчас.

https://twitter.com/youyuxi/status/958548829418246144
источник
2018 February 01

MB

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

MB

Mikhail Bashkirov in Веб-компоненты
гораздо интереснее Stencil.js в этом плане
источник