Comments 13
потому что это есть в React
Люто плюсую :)
Но если серьезно — то появляется больше контроля над реактивностью (которая не всегда нужна), что хорошо. Когда данных становится много, проще и нагляднее немного. А когда данных мало и сами компоненты простые — можно все по старому пилить. А если компоненты усложняются — то нужно применять kiss и разделять.
Совершенно неправильно говорить, что нововведения в vue 3 просто скопированы из реакта. Самое большое и значимое обновление, а именно, composition api, имеет за собой большое обсуждение и мотивацию, которая отражена здесь https://composition-api.vuejs.org/#summary. При этом, картинка, которую "везде предлагают", просто показывает, что при использовании этого api код, который относится к одной задаче внутри компонента, собран в одном месте. В этот момент становится понятно второе преимущество — можно переиспользовать код с помощью простых функций, не используя миксины со всеми их проблемами. И тут автор прав, что пользователи TS получают очень большие преимущества. Код в одном месте — это огромный плюс к чтению, переиспользование + TS — огромный плюс к поддержке. Большие приложения поддерживать станет гораздо проще.
Запарили со своим реактом и сравнениями. Для меня фреймворк нужен не для того чтобы думать "как ты сука это отрендеришь", а чтобы просто "делать свое дело". А вот когда начнет тормозить, тогда я задамся вопрососм "почему" (ни разу не пришлось)
И да, composition api для тех кто хочет. Старые компоненты никуда не уйдут.
небольшой косячок с отсутствием $on
На мой взгляд кривые решения должны быть выкинуты на мороз. $on — одно из них. Нужны глобальные события — вон mitt.
Я тоже немного пострадал, но наверное переделаю (пока заюзал mitt). Это просто само по себе не самое удачное архитектурное решение.
Это global state в который может писать кто угодно. Что произойдет когда код выйдет из под вашего контроля (станет больше программистов)? — я из любой помойки смогу "сломать" приложение послав "неправильный" эвент.
Vue 3.0 — первый взгляд