Комментарии 91
Вы забыли оставить ссылку на статью, на которую написали свою реакцию, чтобы она не выглядела, как диалог с воображаемым другом: https://habr.com/ru/articles/1014708/
"бифы" программистов это весело :)
Поддержу-ка я автора, ссылаемая здесь статья откровенно глупая.
Что не так с веб-компонентами?
Если кратко - да все с ними ТАК. Это замечательный набор современных браузерных технологий, для решения реальных задач веб-разработки. Веб-компоненты позволяют делать очень многое, более просто и элегантно, чем это было бы без них. А главное, они позволяют, с потрясающей гибкостью, решать задачи “со звездочкой” - те, которые немного выходят за рамки и требуют более творческого подхода от разработчика.
А что Вы можете сказать начинающему разработчику, который только хочет изучить Ваши веб-компоненты?
Во-первых, можете ли Вы перечислить их; назвать их сильные и слабые стороны, а также обрисовать в целом наиболее подходящий их изучения/овладения?
Во-вторых, можете ли Вы привести сравнительные примеры того, как одни и те же задачи решаются без применения веб-компонентов и с применением веб-компонентов.
И, конечно же, в-третьих, можете ли Вы объяснить, почему, вообще, возникают эти самые задачи "со звёздочкой"? (Кстати! А что это за задачи?)
Боюсь, чтобы полноценно ответить на ваш комментарий нужно целую отдельную статью написать. Поэтому простите, но пройдусь кратко:
Начинающему разработчику я посоветую почитать доки, и написать пару компонентов самому, чтобы получить базовое представление. Можно попросить ИИ помочь, он все подробно объяснит и посоветует куда дальше двигаться.
Про сильные стороны - я написал в статье. Эти три пункта - и есть то, ради чего стоит в эту тему вникать. Образно говоря, веб-компоненты - это клей, который склеивает HTML, JS, CSS в тех точках вашего приложения, где вам это нужно. Причем, как на клиенте, так и на сервере, как в пространстве (положение в DOM), так и во времени (контроль жизненного цикла). Без них, такая задача как, например, SSR - становится на порядок сложнее.
Простой пример задачи со звездочкой - это виджеты. Представьте, что вы создаете сервис, позволяющий вставить чат, прием оплаты или загрузку пользовательских файлов на любой сайт. Сайты ваших клиентов могут быть реализованы на чем угодно - любом фреймворке, CMS, серверном шаблонизаторе... С любым пайплайном сборки, с любыми "подводными камнями", которые только можно и нельзя придумать. Так вот, веб-компоненты - это, практически, единственный способ создать такое решение с минимальным количеством боли и без необходимости писать отдельные обертки и адаптеры под весь этот всевозможный зоопарк. И даже если вы будете писать эти адаптеры - это будет сделать на порядок проще, если внутри будет общее универсальное решение, поддерживаемое по умолчанию, на уровне стандартов самой платформы.
Вот вам задача с двумя звёздочками: встраиваете вы к себе этот прекрасный сторонний чат, но понимаете, что вместо кнопки "отправить" вам нужен селект из двух вариантов "отправить сейчас" и "отправить позже", а рядом с ним нужен флаг "отправить тихо", а при наведении на имя пользователя нужно показывать всплывашку со статистикой активности на вашем сайте, да и вообще имя пользователя должно быть разного цвета, в зависимости от ролевой модели вашего сайта. Но как на зло, автор чата даже подумать не мог, что вам потребуются такие кастомизации, поэтому не подстелил где-надо slot, где надо part. Расскажите же, про потрясающую гибкость веб-компонент в решении этой задачи.
С удовольствием расскажу. В отдельной статье.
Делается очень просто, если компонент нормально отправляет события, и чуть сложнее, если нет.
Именно потому, что ты вообще не понимаешь и не принимаешь ничего кроме своего, ты и не можешь разобраться, как работать с веб-компонентами. Тебе куча народа это уже говорила, но, как говорится - "а еслим читан, то не понят, а если понят - то не так".
Во-вторых, можете ли Вы привести сравнительные примеры того, как одни и те же задачи решаются без применения веб-компонентов и с применением веб-компонентов.
Если бы с ними все было так, их бы использовали. Безотносительно наличия хейтерских или фанбойских статей. 15 лет уже технологии скоро будет.
Ну да, ну да, конечно, никто не пользуется. У Lit - двукратный рост по загрузкам в npm за год, у Symbiote.js - трехкратный. GitHub, YouTube, Microsoft, IBM и даже SpaceX - это совсем-совсем никто.
Да, да. Я тоже руководствовался громкими именами когда повелся на этот хайп в свое время. В реальности оно крутится под капотом у полутора землекопов, и то потому что зачем то взяли, а теперь выпилить не могут.
Ангуляром тоже пользуются и Гугл ?который его и "поддерживает") и некоторые громкие имена из Легаси банкинга в рф, но хорошим фреймворком он от этого не стал
Я вам больше скажу, даже React - лидеру всех на свете рейтингов по использованию, ОЧЕНЬ далеко до звания "хорошего", в техническом плане. Поэтому "пусть расцветают сто цветов". А те, кому надо, выберут то, что им надо.
То есть не веб компоненты
Лишняя абстракция же просто, что в б2б что в б2с совсем другие проблемы, веб компоненты их никак не решают
Веб-компоненты - это неотъемлемая часть современного DOM API, называть это лишней абстракцией, при том, что все остальное (фреймворки) - это и есть абстракции над DOM - крайне странно. Вы путаете курицу с яйцом.
Про то, какие проблемы они решают - буквально написано и в статье и в комментах. Если никогда не выходить за рамки одной мета-платформы, вы может никогда и не встретите таких задач. Веб-компоненты нужны, прежде всего, для тех, кто с такими задачами сталкивается.
https://github.com/rnd-pro/jsda-kit?tab=readme-ov-file#jsda-kit-vs-nextjs - вот тут становится все более очевидно.
Единственное решение реальных проблем это изоляция с shadow dom, но и она не работает из коробки, как тот же iframe, и тем более не сработает в принципе с 3rd party которые на этих компонентах не написаны
У реальных приложений в вебе вообще другого рода проблемы, компоненты их никак не решают
Dx тоже сомнительный
Ок, хорошо. У вас Shadow DOM не работает, у меня - работает. У вас - компоненты проблем не решают, у меня - решают. Как минимум, половине из нас двоих, веб-компоненты - нужны.
Вот только не надо рассказывать нам про "реальные" приложения таким тоном, как будто вы в этом лучше разбираетесь. У вас нет никаких оснований для этого. Вы можете поделиться собственным опытом, но не говорите за всех.
Статья называется "что не так с веб компонентами", я вам говорю что не так - вы начинаете демагогию разводить
1) современные решения которые сейчас на "хайпе" за открытость кода и полную модифицируемость - shadcnui и прочие поделки
Подход уже показал себя рабочим, особенно в век ИИ, веб компоненты никак ему не подходят
2) shadow dom даёт частичную изоляцию сверху вниз, но не даёт изоляцию снизу вверх, он достаточно ограничивающий чтобы это невозможно было конфигурировать снаружи, но не достаточно чтобы это было безопасно, в отличие от айфрейма
У тому же какую-то отдельную 3rd party библиотеку в компонент просто так не завернуть в "1 клик", если она ломает стили страницы, либо не завернуть вообще таким образом, чтобы она не сломалась
Вы где-то выше приводили пример про встраивание чатов, что по сути своей является встраиванием уязвимости
Если рассмотреть наиболее частый кейс - third party платёжки когда вы не хотите иметь дело с данными карт, но хотите показывать платёжку у себя на экране - iframe все ещё лучше
3) само по себе апи веб компонентов вообще никак не помогает с seo и accessibility, с которыми у каждого второго сайта гора проблем, а скорее мешает
4) про энтерпрайз б2б вообще молчу, там нужна полная конфигурируемость, поддержка ролевых моделей и ТД, когда все зашито в shadow dom это становится невозможным
Можно ещё упомянуть объективно слабый dx, особенно когда дело касается конфигурируемости и кастомизации, и очень слабой поддержки от ИИ
Понятное дело что есть очень нишевые юз кейсы, в которых их в теории можно использовать, но с ними все ещё очень много всего "не так"
Те же генераторы в жсе тоже очень удобные в очень узком ряде случаев, но использует их примерно никто и правильно делает
Вообще, странно кидать сео-контент в тень веб-компонентов. Если приспичило использовать именно веб-компоненты, можно использовать слоты, и будет у вас простой light dom, который будут парсить роботы.
Что касается ИИ, пишем ai docs на свой вкус, и нет проблем.
Насчёт изоляции снизу вверх, видимо имелось в виду определение нижней границы, когда применение стилей должно остановиться. Тень применяется точечно, при этом дырки задаются слотами. Для light dom смотрим актуальное с прошлого года css rule scope.
А по платежам очень верно сказано. Sandbox от айфрейма решает.
Вы, похоже, кроме названия, так ничего не прочитали.
Веб компоненты вообще НИКАК не противоречат и не мешают ни использованию ИИ (модели очень хорошо ориентируются в стандартах), ни какой-либо модифицируемости. Тут вы просто признаетесь, что не понимаете о чем говорите.
Изоляция Shadow DOM идет сверху вниз потому, что каскадная модель CSS утроена именно так, и не наоборот. Конфигурировать снаружи - ВОЗМОЖНО. Учите стандарты, прежде чем делать такие заявления. Кроме того, использовать Shadow DOM в компонентах - НЕ ОБЯЗАТЕЛЬНО. Хватит тиражировать эту глупость, в статье про это подробно написано. iframe - это полноценный window в вашем документе, использовать его ради изоляции - убийство производительности. У iframe и еще проблемы есть, но вы их как-нибудь сами изучите. Про встраивание уязвимости - тоже полный бред. Вы встраиваете фиксированный код, который проверяется по хэш сумме и прекрасно работает с SRI политиками. 3rd party библиотеку в компонент завернуть проще простого. Если ВЫ конкретно не знаете как- это ВАШ skill issue.
API веб-компонентов вообще НИКАК не мешает SEO. Достаточно не прятать SEO-контент внутри Shadow DOM. Если вы делаете это, вы САМИ стреляете себе в ногу, это просто глупо.
Про энтерпрайз и B2B вы тоже поосторожнее делайте заявления, вы разговариваете с человеком, который за много лет в этом вашем энтерпрайзе повидал всякое. Еще больше - спроектировал и воплотил в жизнь. А вот из чего вы делаете свои выводы - совершенно не понятно.
Про DX - тоже бред. За DX - идите к библиотекам, у них с этим все в порядке. Есть куча современных либ, основанных на веб-компонентах. Одну из них я сам написал. И ожидать от низкоуровнего API - DX уровня библиотеки - глупо. Вы бы еще весь DOM API обвинили в плохом DX, лол.
Итого: с демагогией сюда пришли именно вы.
После подобного рода ответов вопросов больше не имею
Очевидные "баги" пытаетесь выдавать за фичи, отрицаете действительность, ждём продажу курсов по внедрению веб компонентов
тоже поосторожнее делайте заявления, вы разговариваете с
Лексикон в общем-то на уровне
Очень сложно спорить с чьими-то выдумками. Тебе пишут, что никто компонентами не пользуется - ты приводишь статистику, но твоя статистика, почему-то, не статистика. Тебе рассказывают про какие-то мифические проблемы, ты на пальцах объясняешь, почему таких проблем - нет, но вместо аргументированного ответа тебе начинают рассказывать про демагогию.
Все что я тут пишу я не с потолка взял, а из личной практики. Я лично решал сотни конкретных проблем и с компонентами и без них. Я работал со всеми популярными фреймворками именно потому, что занимался и занимаюсь интеграциями решений для бизнеса и мне приходится иметь дело со всякими экосистемами, с разными подходами к безопасности, от полного пофигизма до самых строгих политик.
Но вам, видимо, виднее. Вы увидели какие-то "очевидные" баги. Ок, хорошо. Вам лично я ничего не продаю и продавать не собираюсь. Просто проходите мимо.
Мы мигрировали на Lit год назад - это было лучшее решение. И более приятного DX я в жизни не имел.
Чтобы не быть голословным, я когда-то очень ими интересовался и успел поработать на продакшене с Polymer и Lit. До сих пор иногда пишу небольшие компоненты без фреймворков, чтобы по быстрому вставить в какую-нибудь древность. За красивыми словами про глобальные стандарты (как будто кому то не пофиг), нативность против ненативности (как будто кому то не пофиг) в реальности это полное говно уровня чуть выше бэкбона с точки зрения DX.
Можно просто открыть доку к любой либе поверх них, включая либу многоуважаемого автора, посмотреть какое это убогое говно и закрыть.
Начинающим разработчикам рекомендую не тратить на них много времени, ознакомиться и просто иметь в виду, что оно вообще есть.
Уже второй раз вы приходите в комменты к моим статьям чисто нахамить, на ровном месте, без внятных аргументов. По существу есть что сказать?
Ты возможно что-то перепутал, но я напомню что ты публикуешься на открытом ресурсе.
В эпоху агентской разработки побеждает тот, на ком натренирована максимально обширная и качественная кодовая база. Я (речь про фронтенд) уже больше половины кода вообще не пишу, а ревьюю и правлю. А кто-то по слухам не уже пишет совсем.
Если ты не используешь нейронки для разработки, про работу можешь забыть уже сейчас. Если ты используешь нейронки, чтобы генерить приложения из подобного шлака - аналогично. Если кто-то до сих пор не понял, что руками больше писать не надо, то очень скоро он это поймет через рынок.
Какой у тебя там красивый стандарт лежит в основе всем глубоко насрать, так как людям нужны разработчики, которые могут делать просто быстро, качественно и поддерживаемо. И это правильно.
Вот это аргумент, поддерживаю! О бедных вайбкодерах забыли подумать. Не хочу тебя пугать, но нейросети становятся умнее, и сами скоро будут выбирать более легковесные технологии. А вот ты - умнее явно не становишься.
Впрочем, не вижу больше смысла в препираниях на таком уровне, дальше - игнор.
какие нейронки? ChatGPT не может элементарнейший конфиг для Postfix написать не наделав кучу детских ошибок.
которые могут делать просто быстро, качественно и поддерживаемо
Золотые слова, но что они делают в контексте вайбкодинга?
Начну с самой жести - откровенного вранья, манипуляций и подтасовок.
Нам рассказывают про то, что в веб-компоненты можно передавать свойства ТОЛЬКО с типом “строка”
... но ведь HTML-атрибуты (которые вы дальше по тексту разбираете) действительно передаются через коллбэк в виде строк, вы попросту не сможете это опровергнуть, ибо это правда. Ну, и в принципе element.getAttribute() всегда строковый. Пришлось отложить чтение статьи, так как опровергается очевидно и заведомо правильный тезис, лол.
Мне кажется, тот абзац надо переписать яснее, ибо я его так и не понял.
Ну куда уж проще: атрибуты - это атрибуты (текст). Свойства класса - это поля объекта (в JS). Не нужно путать атрибуты со свойствами. Не нужно утверждать, что атрибуты - это единственный способ передать параметр. Все нормальные библиотеки, основанные на веб-компонентах, передают данные в js-рантайме, никто не использует парсинг JSON из атрибутов, если это не требуется специально для чего-то.
Автор, ходить по каждому комментарию и по ставить по минусу - это позорно и жалко :) Более жалко будет только оправдываться, что это не ты.
Жалко, кажется, это писать ещё один, очередной провокационный коммент.
И верх этого, это жаловаться на это при сказанном ранее:
Ты возможно что-то перепутал, но я напомню что ты публикуешься на открытом ресурсе.
Ты прав! Это еще было не жалко! Вот реально дно:
@KonBone - первый коммент с 2022 шгода, пишет из песочницы
@replicate_1 - по приглашению от @i360u, недельная рега
@Mr_FatCat - по приглашению от @i360u
@codegentop – по приглашению от @Mr_FatCat
Тут теряюсь, то ли @i360u сюда воспитательницу еще позвать забыл, то ли пора его пощупать за всякие места за ботоводство. Но в любом случае - это днище.
@Exosphere посмотрите @KonBone @replicate_1 и @codegentop на всякий - минимум комментов, все комменты в топиках автора, всегда появляются, чтобы оставить коммент в его пользу и молча посливать комментарии против. Насколько я знаю, ботоводство запрещено правилами.
Реальным пользователем выглядит только @Mr_FatCat
Да, @Exosphere, посмотрите, пожалуйста.
Честно говоря редко встретишь человека в комментариях, который настолько пренебрегает правилом.
Оскорблять других пользователей, не следить за эмоциями
https://habr.com/ru/docs/help/rules/
Уважаемый @i360u! Я по отношению к вам и вашим ботам адресных оскорблений не допускал. А называть описываемое в статье барахло - барахлом правилами не запрещено. То, что вы воспринимаете критику вашего решения как хамство по отношению лично к вам, еще не делает его таковым.
А вот сливать втихую карму ботами это поинтереснее будет.
Дружище, я тебе карму заминусил за твой стиль общения. Ты лично не считаешь свои выпады хамством, например такой:
Можно просто открыть доку к любой либе поверх них, включая либу многоуважаемого автора, посмотреть какое это убогое говно и закрыть.
Я, например, считаю.
У тебя такой пронзительный стиль общения, что тут боты не нужны для кармослива. Ты и сам прекрасно справляешься.
Дополню тут, раз уж делимся теориями заговора:
Ситуация выглядит, как попытки пиара $mol путём "Задушить конкурента"(?).
@cmyser - явно упомянул, что связан с ним
@nin-jin - также, вероятно, связан, хотя прямо не говорил, либо я уже забыл
@Synopticum - его связь со $mol не понятна, но общий мотив сообщений похож на стратегию их пиара
Не прошу с этим ничего делать.
@nin-jin - это нездоровый автор поделия под названием mol и всей его экосистемы, не умеющий ни общаться, ни принимать каую-либо критику, а @cmyser очень похож на его альтер-эго.
@Synopticum раньше не встречал, но судя по его ответам, пахнет точно такойже cat-piss - либо тотже лагерь, либо альтер-эго.
Не прошу с этим ничего делать.
А вот я, наборот, прошу @Exosphere что-нибудь с этим сделать, ибо эти персонажи реально достали, как и весь их братвополь.
Что до веб-компонент - это лучшее и реально полезное, что случалось с вебом за последнее время.
Дима, слава богу, здоров)
Критику он принимает, но остро отвечает ( что, согласен, не всегда хорошо и часто превращает спор в полемику )
я не альтер эго, я искренне считаю что $mol имеет огромное кол-во преимуществ с которыми невозможно спорить и от которых невозможно отказываться
приходите лично пообщаться на t.me/piterjs ( лично невозможно токсить, уверяю вас )
обсудим веб компоненты и иже с ними)
Критику он не принимает, для него есть только его поделие и все, остальные, кто не с ним - идиоты - это не признак здоровости.
Кроме этого он не гнушается манипуляциями и переходами на личности, что тоже не признак ума или чего-то ещё.
Чтобы не быть голословным, вот последняя его статья, где все отлично видно, особенно в комментах https://habr.com/ru/articles/1014708/
mol, если его сделать честным, а не как делает автор, например исключая оффскрин ноды и сравнивая с либами где они честно присутствуют ни какими плюсами по скорости обладать не будет, а с таким самодуром во главе - и подавно.
да, те ответы его не красят, не буду как то оправдывать
но по бенчам - они все честные ( в js-framework мола нет )
https://t.me/giper_dev/11/24890 - гляньте, там разные js либы используются, никакого жульничества, чистый js
про рендеринг в js-framework-bench скажу что мол не умеет рисовать не виртуализированный интерфейс
Тут я склоняюсь к тому что бенч не отражает реальных возможностей фреймворков, я бы разрешил виртуализацию всем ( пользователю ведь хочется быстрый интерфейс а не 100К честно отрендеренных карточек за минуту реального времени )
если хочеться приятно поболтать, приходите на t.me/piterjs ( быть токсиком лицом к лицу просто невозможно! )
мы никого не душим) если кого и критиковать дак это react)))
скорее просто пытаемся разобраться в вопросе веб компонент, ну и спорим, где то аргументировано где то не очень
я живой, отдельный человек) приходите на t.me/piterjs
пообщаемся лично ( в живую кстати, никогда не видел что бы кто то токсчил так что живое общение - лучший способ коммуникации я считаю)
я пишу на моле, Дима - его автор, третий это хз кто, хейтер какой то левый
Вот реально дно:
@KonBone - первый коммент с 2022 шгода, пишет из песочницы
@replicate_1 - по приглашению от @i360u, недельная рега
@Mr_FatCat - по приглашению от @i360u
@codegentop – по приглашению от @Mr_FatCat
Занятно, что 3 из 4 упомянутых акков уже в бане) то есть @Synopticum говорил как есть, но его всё равно душили комментами и минусами. А он, получается, был прав в отношении @i360u и всей этой цепочки новорегов. Плюс @i360u ещё и свой свежий пост про Simbiot.js позорно скрыл спустя три дня после публикации, видимо не вывез дискуссии. Правда через модератора скрыл, чтобы "ну как бы я не сам, это модер". Какое-то вопиюще-ненормальное желание казаться лучше/больше, чем есть на самом деле)
По видимому действительно прав, но вы уж простите, можно быть правым и не переходя на ты, и не используя сомнительных фраз близких к оскорблениям, как ранее сказал @flancer.
По поводу минусов, да, в некоторых случаях мне было не ясно почему там были минусы, правда та ветка куда-то делась.
Но тем не менее тот фрагмент, который вы процитировали. Интересна, конечно, часть про меня:
Вот реально дно:
@KonBone - первый коммент с 2022 шгода, пишет из песочницы Интересно называть дном то, что до этого я просто читал статьи…
Не любите веб компоненты? Вы просто не умеете их готовить.
Возможно многие выбирают не ту задачу для веб компоненты. Можно начать с простого UI kit на веб компонентах для проекта на vue, svelte или ещё чем-то
часто вижу похожее мнение, не согласен с ним
задача же у нас всех одна - нарисовать удобный быстрый интерфейс
тут веб компоненты проигрывают, сильно проигрывают
Кому они проигрывают? Что опять за чушь?!
Ваша фраза звучит примерно так "CSS проигрывает FastApi", ага.
Любой инструмент работает в контексте, так вот, если без фреймворка и нативно, без сборщиков и тд требуется нарисовать "красивый и удобный интерфейс", то у веб-компонент просто не существует конкурентов.
И рассматривать их надо не как конкурентов фреймоворков, а как дополнительная киллер-фича, которую можно использовать совместно, это же касается и shadow DOM.
Не чушь, надо было сразу ссылку дать
они проигрывают по потреблению памяти
вот тут сделал аналитику https://habr.com/ru/articles/1019420/


И рассматривать их надо не как конкурентов фреймоворков, а как дополнительная киллер-фича, которую можно использовать совместно, это же касается и shadow DOM.
Согласен. Просто много появляется фреймворков основанных чисто на них, и они уже конкурируют с "обычными" фреймворками
Вы реально думаете, что сравнивать сколько потребляется памяти в нэтиве DOM элементов и js объекты, которые потом плюсом рендерится в элементы DOM - это действительно корректно? Особенно если учитывать нагрузку на CPU при этом.
Если да - у меня больше вопросов нет)
О боги, вы опять передёргиваете факты. Скажите пожалуйста, а ваш $mol не в DOM рендерится? А после рендера каждого компонента в DOM узел у вас разве не выделится тот же объём памяти, что и у веб-компонентов?
Вы берете специфичный кейс ленивой инициализации (который в большинстве приложений не нужен), возводите его в абсолют, и кричите: смотрите, народ, веб-компоненты в 8 раз потребляют больше памяти, чем $mol!
Поэтому с вами и невозможно дискутировать, потому что вы живёте в своем мире вымышленных проблем.
не передергиваю
мол использует виртуальный рендеринг и не деградирует, а вот всё остальное - деградирует, так как рендерит полностью
Без комментариев)
по памяти Если бы мол рендерил всё - было бы так же
но он же не рендерит
кейс не специфичный - проблема производительности сейчас массовая
я не стараюст как то передернуть, в сущности то вы правы - но фактически нет
проблема веб компонент в том что им обязательно занять эти минимальные 124 байта, вот суть то, еще до обработки уже памяти больше нужно
Проблема производительности массовая, потому что VDOM когда-то победил. Но благо сообщество опомнилось, и стали появляться нормальные фреймворки.
Госпади 😁 опять вы со своими 124 байтами. Так не создавайте веб-компоненты, которые не собираетесь рендерить. У меня ощущение, что вы попали в ментальный плен к Дмитрию, готов оказать психологическую помощь 😅
😄
Те что отрендерены без виртуализации будут)
Я просто правда искренне считаю что мол лучше всех, поэтому и защищаю)
Вот в этом и проблема: в инженерном мире нет "лучшего" решения. У веб-компонентов есть свои минусы, но есть и неоспоримые плюсы. Как и у Реакта, и других фреймворков.
Перестаньте играть в эти детские игры: лучше или хуже, а выбирайте то, что максимально подходит в вашей ситуации.
P.S. у вас в документации $mol очень специфичный UX, я бы не хотел, чтобы все сайты были такими. И это о многом говорит... Вы фокусируетесь на бенчмарках и байтах, а не на реальном удобстве для пользователей.
Мне кажется что есть всё таки, новые фрейморки появляются чтобы заменить старичков, но и те и те решают одни и те же задачи
По поводу доки, да она отстойненькая)
Но никто не запрещает делать красиво, например как у меня вот
https://b-on-g.github.io/blitz/
Подробнее:
И на самом деле я как раз стараюсь думать про пользователей, бенчи тут так, просто в тему для объективности
К тому же никому не нравятся лаги) и баги)
Ещё раз все сайты на моле не одинаковые !!! Это миф !)
Это 3 сайт на моле, который я увидел, и сразу понятно что это $mol. А как у вас дела с CLS обстоят? Метрика может нормальная, но вот из-за этой виртуализации сайт воспринимается как нечто дерганное.
Это уже успех?) Честно лучше не выставляйте такое, это позор.

Лишняя шапка меня выдала!)
о, багу не заметил, надо поправить будет
рестарт страницы поможет кстати ;)
всё остальное работает, не позор)
по метрикам

FCP возможно расчитывается неправильно, не уверен
на декстопе еще добавлю

Наверное да, ошибки бывают, но когда вы на такую «горячую тему» пишете и спорите на хабре надо железобетонно вылизывать все сервисы и страницы; на разных браузерах; на мобильном и декстопе. Иначе с такими пусть и hotfix косяками ну не продадите обществу, ну не. При ужн текущей спорной репутации $mol я бы над каждой мелочью дрожал и тестировал шоб работало идеально. А так, что 6 лет назад в комментариях github issues по сути, что сейчас.
В мол действительно есть интересные идеи, но почему так плохо протестировано и нарочито навязано. это будет отталкивать
Lighthouse заброшен. Используйте PageInsight (оф рекомендация гугла)
Если вдруг в Питере приходите развиртуализироваться на t.me/piterjs !
Там очень лампово и уютно ( и иногда шутять про смол 😄)
Отличная статья. Приверженцы $mol разоблачены и выведены на чистую воду 😅
Большой плюс веб компонентов - наличие спецификации, которая выбита в камне и реализована всеми браузерами.





Что не так с веб-компонентами?