Size: a a a

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

2019 August 14

AY

Andrey Yamanov in Веб-компоненты
Это прям офигительный плюс я бы сказал. Ничего подобного с обычными компонентами сделать нельзя, даже на Svelte.
источник

AY

Andrey Yamanov in Веб-компоненты
Pavel 🦇 Malyshev
дык это наверное и есть фоллбеки не?
Может я не правильно понимаю это слово) Фоллбеков у меня почти нет. Только для place-* из коробки.
источник

MB

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

и тут приходил гугл и говорит - щас мы все решим с помощью Shadow DOM

тут ему отвечают - не надо, мы уже все решили, React, CSS-in-JS, все дела
а другрие говорят - мы тоже уже все решили, Angular, scoped стили, все делал
ну и там Vue потом тоже присоединился
Svelte тоде наверно упомянуть надо?

гугл опять говорит - вы то все там у себя решили, конечно, но с интероперабельностью все плохо
да и надоели вы уже обновлять свои либы каждый полгода-год (Angular 7 да уже? а сколько версий было у JSS? проверил - 9, у других более молодых не лучше)
да и производителньость у вас тоже сомнительная

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

AY

Andrey Yamanov in Веб-компоненты
Вот такие примитивы я сейчас и разрабатываю. 🙂 Отчасти по перечисленным причинам)
источник

MB

Mikhail Bashkirov in Веб-компоненты
ну и насчет 7 версий ангуляра
я только тогда полюбил веб-компоненты по настоящему, когда увидел, как люди спокойно обновляются с Polymer на LitElement компоненты
источник

AY

Andrey Yamanov in Веб-компоненты
Но вообще идея инкапсулировать элементы в свой отдельный мир мне не нравится. Даже с учётом прокидывания custom properties. Без единой системы/договорённостей это толком работать не будет.
источник

PM

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

и тут приходил гугл и говорит - щас мы все решим с помощью Shadow DOM

тут ему отвечают - не надо, мы уже все решили, React, CSS-in-JS, все дела
а другрие говорят - мы тоже уже все решили, Angular, scoped стили, все делал
ну и там Vue потом тоже присоединился
Svelte тоде наверно упомянуть надо?

гугл опять говорит - вы то все там у себя решили, конечно, но с интероперабельностью все плохо
да и надоели вы уже обновлять свои либы каждый полгода-год (Angular 7 да уже? а сколько версий было у JSS? проверил - 9, у других более молодых не лучше)
да и производителньость у вас тоже сомнительная

мы находимся где-то здесь
ситуация про jQuery-плагины уже забыта
полагаю по причине того, что все кто щас в разговоре участвует, уже продвинулись выше в карьере и больше такие сайты не пишет и забывают, что большинство как раз до сих пор так и делают, просто потому что так быстро и просто, и нужен им более простой стандартный примитив, которые будет в браузере рабортать по умолчанию
я бы не стал сравнивать то что предлагаю WC с Jquery+плагины по простоте и удобству использования
источник

PM

Pavel 🦇 Malyshev in Веб-компоненты
интерфейсы WCs как всегда в стиле других DOM API и им нужны свои "jquery" чтобы быть просто юзабильными для тех разработчиков о которых ты пишешь
источник

MB

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

MB

Mikhail Bashkirov in Веб-компоненты
Pavel 🦇 Malyshev
интерфейсы WCs как всегда в стиле других DOM API и им нужны свои "jquery" чтобы быть просто юзабильными для тех разработчиков о которых ты пишешь
я останусь при своем мнение, основанном на наблюдениях за десятками команд, которые перелезали на WC
источник

PM

Pavel 🦇 Malyshev in Веб-компоненты
Mikhail Bashkirov
я останусь при своем мнение, основанном на наблюдениях за десятками команд, которые перелезали на WC
они туда с уровня jquery переехали?
источник

PM

Pavel 🦇 Malyshev in Веб-компоненты
если да, то ок, имеет право на жизнь
источник

MB

Mikhail Bashkirov in Веб-компоненты
почти, еще AngularJS был
источник

PM

Pavel 🦇 Malyshev in Веб-компоненты
Mikhail Bashkirov
почти, еще AngularJS был
это уже другой уровень)
источник

MB

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

IF

Infant Frontender in Веб-компоненты
Andrey Yamanov
Но вообще идея инкапсулировать элементы в свой отдельный мир мне не нравится. Даже с учётом прокидывания custom properties. Без единой системы/договорённостей это толком работать не будет.
Но ведь есть shadow parts и constructable stylesheets, хотя работают они только в хроме
источник

MB

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

MB

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

MB

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

MB

Mikhail Bashkirov in Веб-компоненты
и там пока прогресс медленный, вот недавно же была новость про form-associated custom elements
источник