Чем Vue лучше React?
HTML-код
- Опубликовано: 8 сен 2024
- 🔥 Оформить премиум подписку - htmllessons.ru...
⚡️ Список интенсивов по подписке - htmllessons.ru...
► Как купить из других стран - t.me/redgroupc...
🍥 Тема в редактор/IDE - НОВАЯ IDE FLEET
⚡️Закрытый клуб "5 утра" (3 дня бесплатно) - htmllessons.ru...
👉 Все ссылки (+ настройка редактора) и информация обо мне -
Смотрите видео ДО КОНЦА, подписывайтесь на канал, ставьте 👍 и колокольчик 🔔
🔥 Оформить премиум подписку - htmllessons.ru/premium
⚡️ Список интенсивов по подписке - htmllessons.ru/list-intensives
► Как купить из других стран - t.me/redgroupchannel/37
Я перешёл с React на Vue и меня подкупил его минимализм и простота 😄
Я вот сейчас изучаю React и мне тяжело, я думаю перейти на vue
@@LiMjfk как успехи с переходом
на vue
Озон, кстати, тоже на вью работает)
@@rusfungame и как там? Ты не на вью шел?
@@rusfungame на удаленку?
На собес шел там сказали реакт и редакс
Мне как новичку тяжело даётся React, думаю перейти на Vue. Спасибо вам за пояснинения🥰
Плохая идея выбирать самое легкое, лучше взять сложное и обзавестись фундаментальными знаниями
Не корректно ставить вопрос "Что лучше? ". Лучше то, что больше подходит для решения бизнесовой задачи.
Когда я перешёл с js на vue - я офигел как стало всё проще, но всё же меня не покидает мысль, что лучше перейти на react. Вакансий по react куда больше, хотя стоит у меня на vue 😁
с JS на vue перешел говоришь 😂
@@maksuchiha не вижу никакого диссонанса в этом утверждении. Перешел с разработки на нативном языке на разработку с использованием фреймворка.
У нас в компании огромный проект на ваниле с допотопных времён. Переводим его на Vue с недавнего времени.
Есть мнение что с Вью на реакт перейти куда легче чем с ванилы в реакт вкатываться
@@maksuchiha видимо чел писал ревктивность на чистом js
давай про ангуляр
Ангулар топ)
React пошёл по странному пути со своими компонентами, которые рендерятся на сервере. Но это нюансы. Я не в восторге от концептуальных изменений.
Код на классах был более организованным. Приходишь на проект на хуках - становится грустно. Там кто во что горазд. Ведь оформлять код в одной функции-компоненте можно как душе угодно.
Vue позаимствовал идею хуков в своём Composition API, но сохранил свою удобную структуру описания компонентов в options API.
Vue убил двух зайцев. В options API всё как по полочкам: вот тебе шаблон, вот тебе состояние компонента, вот тебе методы, вычисляемые свойства и вотчеры. Composition API позволил удобно описать общую логику для нескольких компонентов: решили проблему с дублируемым кодом, избавились от неоднозначности миксинов.
А в это время React отказался от классов и оставил только хуки, из которых начинающие разработчики готовят изумительную кашу из кода.
В React рендеринга на сервере по умолчанию нет, серверные компоненты тоже применяются крайне редко(я на практике ни разу не применял). Возможно, вы имели в виду Next.js?
Код на хуках наоборот более понятный, как по мне. Да и в классах можно ту же кашу написать, если в проекте нет выстроенных стандартов и стилей написания кода.
Мне, как React разработчику, очень непривычно работать с Vue. Все говорят что он проще, возможно и так, но работать с ним труднее что-ли, в React вы контролируете больше процессов, да и подход single file components мне очень чужд
Ну и да, React от классов не отказывался и с ними все еще можно работать
@@lunamoon9125 Я имел ввиду React Server Components.
Отказ от поддержки и улучшения чего-либо я считаю отказом. Команда React не улучшает и не фиксит проблемы с классами и настоятельно рекомендует использовать хуки.
Какие процессы в React контролируются, а во Vue нет?
single file components подход с текущими возможностями IDE вряд ли кому-то создаёт проблем. Можно свернуть шаблон и стили, чтобы они не мешались. В остальном я не вижу в этом подходе минусов.
Давайте про Nuxt!
Шикарно , ждём про Ангуляр 🙂
Сделаем
Глово, гитлаб, апворк, п****хаб на вью написаны
mcdonalds
скорее всего какая то часть просто, когда были сделаны эти сайты не было вью
Внезапно... Оказывается, Adobe на вью набабахали. Блин, круто)
Красава. Как всегда лайк
beget, selectel, ozon, kia, vkusnoitochka, студия Артемия Лебедева и многие другие используют Vue или Nuxt(ssr vue). Но если честно - я бы выбрал реакт. банально больше вакансий.
Бро дело в том, что реакт сделали парни из фейсбука для себя, им все равно удобно тебе или нет, хочешь пользуйся, не хочешь не пользуйся, так что им не нужна красивая и удобная документация :)
Как человек, 2 года разрабатывающий на вью , скажу минусы :
1) «магия вью» - фреймворк реально магически работает, он изи ту старт Хард ту мастер
2) гораздо меньше вакансий
3) во вью 2 плохая поддержка тайпскрипта
4) меньше вакансий - меньше комьюнити, а следовательно меньше библиотек
5) слишком большая любовь эвана ю к новшествам, которые могут не понравится и их сделают «опциональными» - composition api передает привет
P.S. На вью полностью сделан alibaba, китайцы очень много ресурсов в фреймворк вложили
А что бы ты выбрал сейчас?
@@it_infomer для себя лично вью. Но с учетом если бы мне быстрее хотелось вырасти и найти работу - реакт. С ним это реально проще.
@@Andrey-il8rh на вью найти работу в Европе гораздо сложнее чем на реакте, чсв понизь и посмотри статистику
При условии что соискатель не имеет опыта
на кой сдались все эти Vue, React, Angular?? Если все то же самое можно делать на чистом html css js .. 🤷🏻
Что бы писать меньше, и оптимизиравнно было
А зачем JS когда можно на Assembler
ozon написан на Nuxt
Нет
Для меня плюс ещё, что во вью используются темплейты, а не вонючий JSX
Это плюс только для новичков, которые плохо знают JavaScript и им html ближе
@@REDGroup Не в этом дело, не удобно писать HTML в js, в котором ты пишешь HTML, чтобы написать js
@@REDGroup Вёрстка более читабельная, зачем велосипеды изобретать
А Вас во vue не смущает магия? Различные директивы, которые пришли из ангуляра. И вместо изучения JavaScript новичок будет учить особенности vue
@@REDGroup Не в этом дело, я когда переносил сайт на ангуляр, то вёрстку нужно было редактировать под JSX, что очень много времени занимает
Vue2 был проще :) теперь это в прошлом.
Пробовал vue, не по мне. Лучше буду на react
Мне реакт как новичку легче дался, хоть vue изучал дольше и упорнее
Сколько времени изучали реакт?
Вы наверное изучали чистый реакт, без его экосистемы
Как же мне нравится jsx в React, для меня это удобней и понятней чем темплейты во vue
Полностью согласен. И нет никакой “рыганины” внутри html
Прикол в том что если ты создаешь какой-то сайт для пиццы то vue будет легким, но если это довольно большой проект с беком и тд, то vue сложность вырастает в геометрической прогрессии в отличие от реакта
Net
Гитлаб!
После реакта сел за вью и я сгорел через пару часов изучения и погружения в проект. Нельзя вызвать изменение родительских пропсов с перерендером. Что я имею ввиду, только передавать emit, дальше этот emit вызвать, он изменит пропс, но, перерендера не будет, пока я ту же самую логику не продублирую в самом компоненте, из которого я вызываю функцию. В итоге зачастую код x2 идёт.
И моё любимое, for для компонента, какого черта это говно дублируется в дом дереве, зачем, а главное, зачем....
Вообще ничего не понял по первой претензии. Зачем x2 код?
Можно упороться, передать колбэк функцию в дочерний компонент, как и в React, который вызовется и изменит состояние родительского компонента. Но этого делать ни в коем случае не нужно.
Компонент во vue - это закрытый элемент со своей внутренней логикой. Вместо того, чтобы принимать от родителя функции с непонятной сигнатурой, дочерний компонент просто выбрасывает событие с нужными данными. Родителю остаётся только перехватить это событие и вызвать нужную ему функцию. Это более логичный подход. Родительский компонент должен знать о дочернем. Дочерний компонент в идеале вообще ничего не должен знать о внешнем коде. Он только получает свойства и выбрасывает события. Внешний код пусть делает с этими событиями всё, что его душе угодно.
@@Boortwint дружище, либо ты не понял что я имею ввиду, либо ты никогда не работал с вью полноценно.
Чтобы изменить состояние компонента во вью - нужно изменить его состояние локально. НО! Приведу пример с которым столкнулся я.
Задача была сделать смену 3д модели с одной на другую, на вью и без сторонних библиотек. Так как проектная работа, то изменять стек технологий невозможно без согласования, а значить работаем с тем, что есть.
Дано: иизменить 3д модель на другую, плавная анимация компонента Switch между 2 вариантами (например true / false ), чтобы переключаться между двумя моделями.
И так, что сделал бы в реакте, я бы передал setState и valueState ( проще говоря getter и setter ) от родителя, и с этой переменной я бы делал все что нужно. Потому что она будет отвечать и за состояние switch, и за выбранную 3д модель.
Итог, 2 пропса, минимум логики в компоненте, что позволяет его переиспользовать без проблем и самое главное, не нужно писать лишних обверток. Чисто и понятно.
Что же с Vue. Из родителя прокидываешь переменную, чтобы задать дефолтную позицию для свитча, так же делаешь функцию чтобы она изменяла состояние у родителя и вот тут кроется подстава.
Чтобы подписаться на изменение и вызвать перерендер 3д модели, я обязан сделать v-for. А вот чтобы с анимацией сделать переключение ползиции свитча, ты уже не можешь использовать фор, а значить нужно писать дополнительную логику для изменения переменной. Так как перерендера нет, логика дублируется уже в самом компоненте свитча.
Как итог, в 2 раза больше логики.
Надеюсь суть я донес, советую почитать про то как работает изменение родительских состояний в реакте и вью. И вы заметите, что принцип один, только вот во вью нет перерендера, что и вызывает удвоение логики. Забавно, что вы писали такой комментарий и не знаете о такой особенности vue.
А на счет того что дочерний компонент не должен знать о том, что есть родитель. Так вот, тогда кнопки бы у нас не работали, потому что кнопки работают на функциях, которые мы передаем как пропс. А если вы инкапсуллируете логику в компонент, то Вам нужно создать на каждый блок разную кнопку, а это уже булщит.
Единственное годное применение вью, это лендинги. За время работы в компаниях, как фрилансера и в проектной занятости - ни разу не встретил вью в больших проектах. Потому что вью - это практически html + css + js, ну и попробуйте быстро написать на чистом html + css + js, админ панель с realtime. Как минимум куча лишнего кода, как максимум дикие сроки. Это как писать бэкенд на js, вроде можно, но только зачем, ведь корпорация в итоге будет нести только убытки.
@@user-bi8pe4lc1x v-for? А зачем он там нужен, если в условиях решения задачи на React не было никаких списков?
@@user-bi8pe4lc1x у меня затык вот этом утверждении "Чтобы подписаться на изменение и вызвать перерендер 3д модели, я обязан сделать v-for."
Я не совсем понял, почему подписка на изменение требует таких телодвижений.
Если отображение 3D-модели завязано на значение valueState, то почему при клике на переключатель необходимо использовать v-for, иначе модель не перерендерится?
Еще гитлаб на vue
Это все знают
Не лучше выучить Vue и React 😅