Комментарии 30
А какие остальные? Ангуляр? У них просто разные задачи. У остальных использование чуть выше статистической погрешности. А Реакт - вообще не фреймворк.
У них просто разные задачи
У них у всех одна задача — пользовательский интерфейс. Так что не надо наивно полагать что якобы под разные проекты подходит тот или другой инструмент, они все подходят под любые задачи из реальной жизни.
А Реакт — вообще не фреймворк.
В этом его преимущество, ибо добавляешь к нему Typescript и MobX и он сразу превращается в шикарный инструмент. А без этих 2х аспектов он убогий, спору нет.
У автомобиля, поезда и самолёта тоже одна задача: транспортировка людей и предметов. Но об их взаимозаменяемости зачастую вопрос не стоит.
Не, спорю, имея достаточно упорства, но недостаточно понимания, можно решить с помощью любого фронтенд фреймворка любые задачи пользовательского интерфейса, даже совершенно ему не свойственные. Вопрос в том, что фреймворк должен помогать разработчику достичь целей прилагая минимум усилий. Т.е. Реализовывать интерфейс (и всё, что с ним связано) нужно благодаря, а не вопреки фреймворку.
По поводу доработки напильником - так если ещё добавить несколько библиотек уровня RxJs и выкинуть уродский синтаксис - то и ангуляр получится xD
У Реакта есть только одно преимущество - порог входа: он написан РНРшниками для РНРшников. В остальном в сравнении с Vue полная безнадёга и упадок.
У автомобиля, поезда и самолёта тоже одна задача
Это уже не правильная аналогия. Это аналогия из разрядка интерфейс операционной системы, мобильный ОС, браузерной версии, мобильной версии.
любые задачи пользовательского интерфейса, даже совершенно ему не свойственные.
React + MobX решает любые задачи UI.
если ещё добавить несколько библиотек уровня RxJs
Получится вырви глаз лапше код и непригодная для дальнейшего развития/поддержки кодовая база.
выкинуть уродский синтаксис
JSX великолепен
У Реакта есть только одно преимущество — порог входа: он написан РНРшниками для РНРшников. В остальном в сравнении с Vue полная безнадёга и упадок.
Голый react да, но его голым или +redux используют только недалекие. Он пригоден только в связке с MobX'ом, а тут уже это небо и земля.
Получится вырви глаз лапше код и непригодная для дальнейшего развития/поддержки кодовая база.
Это получится при использовании любых инструментов, если руки растут оттуда, откуда ноги должны.
Если человек не умеет ни во что кроме паттерна Flux и поделок мордокниги - это его проблемы. Кто слаще морковки ничего не ел и сложнее React'a ничего не осилил - ССЗБ.
Отмечу, что даже этот паттерн во Vue реализован на голову удобнее, чем в православном Redux-e. За MobX не знаю - говорить не буду. В целом не фанат данного паттерна, но думаю этот холивар тут не уместен.
React + MobX решает любые задачи UI.
Angular или Vue решает те же задачи без MobX xD
JSX великолепен
Да-да, а CSS-in-JS прекрасен! (нет)
Голый react да, но его голым или +redux используют только недалекие.
Его используют по разным причинам, но выбирают как базовую библиотеку, как правило, недалёкие. Аргументы про процент использования из области "миллионы мух не могут ошибаться". Непродуманная архитектура еще долго будет вылезать боком. Хоть к 17 версии основные поводы для фейспалма закостылили, это всё в целом напоминает превозмогание собственноручно созданных трудностей.
За MobX не знаю — говорить не буду
Поэтому у вас такие суждения, MobX делает из React'a вообще абсолютно другой инструмент, управление состоянием становиться эталонным. React это только лишь view слой и ничего больше.
Заинтриговали... Глянул. Таки, да! С богомерзким Redux никакого сравнения. На первый взгляд даже может тягаться по удобству использования с Vuex'ом. Декораторы напомнили Angular>1, аж прослезился...
Но с появлением хуков, как мне кажется, все эти глобальные хранилища стали излишними. Функциональные компоненты и хуки способны решить большинство задач из коробки.
Но с появлением хуков, как мне кажется, все эти глобальные хранилища стали излишними. Функциональные компоненты и хуки способны решить большинство задач из коробки.
С помощью MobX это решается намного быстрее, проще, приятнее, гибче и красивее, про оптимизацию производительности из коробки я вообще молчу)
Да, да, ещё эпоха "похорон пхп" никак не завершится, а тут убийца JS-Фреймворков нарисовался. Никогда такого не было и вот опять!
Я не говорил, что он "убьет" всех других. Не надо передёргивать. Просто выйдет на первое место по использованию.
Представьте, что теперь библиотеки компонентов можно писать на Vue, а использовать везде. Естественно, выгоднее писать их сразу для всех фреймворков и библиотек, используя эту фичу.
На первое место он не выйдет, по известной причине.. "прохайпенный" Реакт врядли уйдет в тень и сообщество до сих пор гораздо больше чем у всех остальных
Фанаты Реакта тут поспорят, я кстати категорически не фанат этой библиотеки, никогда не был и не стану.
Про css - переменные не согласен, это давно уже реализовано в CSS-to-JS библиотеках, например styled-components и применяется в Реакт. Про веб-компоненты, я какое то время наблюдал за Lit библиотекой, она появилась задолго до Vue 3 и изначально была создана для веб-компонентов, то есть идея сама по себе вообще не нова.
Я привел styled-components как пример (Using Css Variables with Styled Components), есть еще emotion и много других CSS-to-JS библиотек с возможностью использования css vars. Я к тому, что это не про Vue/React как таковые..
Значит я рано радуюсь) в любом случае, эта обнова как раз то, что мне нужно в решении моей проблемы, над которой я работаю.
Дак вот так и надо было начинать статью ^_^ - это главное! Удачи!
Я вот поигрался со обновой и мне очень понравилась реализация css-переменных. Они записываются в inline-стиле элемента (вроде даже если стиль не scoped) хотелось бы иметь возможность делать темы со списком переменных и расшаривать их для всего приложения. Надеюсь эту возможностьсделают в будущем
Да пожалуйста, они ведь знают, что делают.. Меня больше впечатлил вот этот Pull Request #2345 . Занимаюсь глубоким погружением в изучение TS сейчас и работа инженеров по оптимизации кода TS и тд - всегда впечатляют, снимаю шляпу..
Использовать веб-компоненты как общую базу для всех фреймворков – это очень утопичная идея, в реальности не работает. Вместо использования всех возможностей Vue, вам придется искать общий знаменатель и бороться с причудами как других фреймворков, так и самих веб-компонентов. Пару лет назад я об этом написал цикл статей с детальным разбором: часть 1, часть 2 и еще один перевод на эту же тему.
Да не решит это весь ворох задач и требований, предъявляемых заказчиками в разной стадии упоротости и фанатизма. Никогда никаких серебряных пуль в мире фронта не было и не будет. Так что пока Vue сообщество будет рвать на элементы реакт и прочие, выйдет очередной новый фреймворк и разработчики получат очередное "свежее дыхание", пока не приестся. Вон недавно за свелт хайпили. И пока поутихли.
Положу здесь, очень классное интервью Evan Y
Вышла?
Вышла Vue 3.2