сложно, костыльно делать?
Как по мне, самый главный недостаток вью - что можно написать одну вещь 20 способами, и всё будет работать, но не факт что хоть один способ будет хорошим решением
А можешь пример привести, пожалуйста
реакт в этом плане едва ли отличается, там еще больше способов что-то сделать) вот ангуляр конкретно в этом сравнении выглядит лучше остальных
Мутирование пропсов: 1. Передать пропс и мутировать его 2. Передать пропс и выкидывать эмит вверх чтобы его отредачить 3. Передать пропс, скопировать его в локальное поле из data() и шаманить с ним всякую хрень.. ужас :( 4. provide/inject 5. vuex ... список можно продолжать
Возможно, особенно с появлением контекстов и хуков, но я вот хочу потрогать нормально Реакт чтобы сравнивать адекватно
но 1 и 3 варианты просто неправильные) у provide/inject своя область применения, у vuex своя, они тоже не связаны если уж говорить про "разные способы сделать что-то одно", то это Options API/Composition API/Composition API + script setup
Ну так 1 и 3 вариант применяется.. к сожалению очень часто, особенно с объектами Вьюкс почти никогда не нужен (как и в принципе СТМ). А еще это доп. прослойка и люди начинают этим злоупотреблять.. очень сильно, правда, так же и с миксинами, прям у всех руки чешутся нахерачить и туда и туда побольше, и чтобы было как в компоненте таблицы в bootstrap-vue провайд/инжект во вью2 не реактивен по дефолту, единственное нормальное применение его я увидел только в vee-validate. А еще он неявен, и тоже можно начать злоупотреблять
>к сожалению очень часто, особенно с объектами это да, но это ведь не говорит о том, что это нужно использовать >А еще это доп. прослойка и люди начинают этим злоупотреблять это проблема не только во вью, но и в реакте - там точно так же любят сложить добрую половину логики в redux и считают, что это надежное решение, как швейцарские часы >провайд/инжект во вью2 не реактивен по дефолту он в 3 строчки делается реактивным, а еще он почти ничем не отличается от контекста в реакте, просто конкретно во вью 2 он гораздо менее удобен, но это не отменяет его пользы >А еще он неявен это неправда, потому что консумер явно указывает, что он использует чужой контекст через inject(), вот если бы не было inject, тогда это было бы неявно ну и нужно понимать, что provide/inject часто используется в тех компонентах, которые не могут работать друг без друга
>нормальное применение его я увидел только в vee-validate оно там ужасное как раз)
Наверное..) А можно как-то без провайд/инжекта сделать такую же логику обсерверов?
почему? как раз пример компонентов, которые работают только вместе
тут скорее вопрос не к использованию provide/inject, а в целом к реализации, она там очень неявная и кишит такими же неявными багами и проблемами, которые до сих пор не могут пофиксить ввиду изначально кривой архитектуры
К слову - кто-то знает еще либки для валидаций помимо vee-validate и vuelidate? vee-validate мне показалась намного полезнее, но баги там и вправду есть, хоть и не критичные
vee-validate v4 переписан нормально и его гораздо приятнее использовать но если сравнивать с v3, то это 2 разные библиотеки
Кажется там неудобный хендлинг ошибок, уже не припомню точно что не так В vee-validate обернул инпут условный в validation-provider, дал правила, получил через слот ошибки/валидно ли, и всё, жизнь прекрасна А потом еще сверху всё обернул validation-observer, взял valid/invalid и задизейблил кнопку "далее" на формочке)
Уже думаю про полный переход на вью3, надо только посмотреть поддержку библиотек которые я юзаю обычно
там в основном остались только какие-то ui-либы, которые еще не переписали под 3, а все остальное уже давно есть
Супер, я как-то слегка хейчу юайные либы)
да они в основном ок для админок и всякого такого
О, да, вы правы, 100%
Один раз подключил - а оно засрало проект уже своими классами, например :)
Можно компонентные ui фреймворк использовать
это у тебя флешбеки от какого-нибудь бутстрапа всего скорее, сейчас в большинстве своем все стили инкапсулированы в компоненты
Это да, но там скорее был опыт с бутстрапом
Наверное да, но пока что юайные либки прям не в админках замечал только в проектах на Реакте
Ant Design классная либа для реакта.
она и для вью есть
Обсуждают сегодня