169 похожих чатов

Коллеги, работаю с quasar (вдруг важно🤔) vue3 + vuex (js) Понимаю,

что нехватает знания о лучших решениях по разработке на vue3.
А именно:
Мне удобно дробить большой код компонента на подкомпоненты с единственным применением - вроде это считается не хорошо, но мне удобно😎
Мне нравится выносить как можно больше логики в стор (vuex getters и actions) в идеальном мире внутри компонентов я вижу только геттеры и доступ к точным, понятным actions.
Но это раздувает код стора, а работа с модулями мне не нравится:
getters['modulename/gettername']
Так себе запись...

В общем понимаю, что не качественно строю архитектуру приложений, но каких-то прозрачных понятных примеров найти быстро не смог.

Пытался изучать код примеров/приложений/плагинов, но обилие var создаёт недоверие к адекватности текста.

Итого: где можно кратко, со множеством примеров и объяснением почему так, а не иначе, найти как спроектировать архитектуру? 🤔

16 ответов

9 просмотров

Если кратко - переписывайте все без стора

Vlad
Жоско ))))

Зато правда

Вы задайте себе вопрос, зачем мне хранить логику в глобальном сторе, которая фактически дергается в одном компоненте

Исходя из личного опыта могу сказать, что если компонент всегда работает с данными одним образом и только от получает эти данные, то логику получения и взаимодействия можно держать в компоненте. Если же несколько компонентов используют одни и те же данные, то тогда так не получится. Держать логику в сторе - не слишком хорошая идея, если логика касается работы компонента с данными, а не работы с данными самой по себе.

Максим-Юдин Автор вопроса
Yurii
Исходя из личного опыта могу сказать, что если ком...

Коллеги, благодарю за обратную связь. На все ответы разом не ответить, но учитывая общность замечаний, поясню: В сторе логика только та, которая получает/отдает данные по АПИ, и которая берёт нужное через геттеры Вот геттеры могу на один компонент написать - мне н нравится, когда разносится логика: половина в сторе, половина в компоненте🤔 Ну, когда что-то править надо, начинаешь вспоминать: а какого типа эта логика и где она к меня лежит?.. Но когда у меня более 10 ендпоинтов то actions, работающие с получением/отправкой, данных разрослись уже на энциклопедию 😂😂😂

Максим Юдин
Коллеги, благодарю за обратную связь. На все ответ...

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

Максим Юдин
Коллеги, благодарю за обратную связь. На все ответ...

В таком случае ваша стора будет содержать getters, которые напрямую относятся к получению данных и станут ненужными. Вы тогда напрямую сможете mapState делать и уже в компонетах делать getter.

Максим-Юдин Автор вопроса
Yurii
В таком случае ваша стора будет содержать getters,...

Геттеры, которые не обрабатывают данные я не применяю 😎 Но в целом лично испытываю трудности с выносом геттеров в компонент, потому, как писал выше, забываю, где искать исходные данные😂😂😂 Потому и интересно, как правильно (рекомендовано) и почему именно так.

Максим Юдин
Геттеры, которые не обрабатывают данные я не приме...

Есть два основных варианта. 1) Вы получаете данные внутри компонента 2) Вы получаете данные в родительском компоненте и передаёте через props.

Максим-Юдин Автор вопроса
Yurii
Есть два основных варианта. 1) Вы получаете данны...

Тут вопрос, если и родитель берет данные из стора и компонент может брать данные из стора, то как лучше? С одной стороны удобно, что вся логика, связанная с приложением, в одном месте. Например у родителя: Он получает данные и распихивает их по дереву компонентов. С другой стороны, удобно, когда компетентны живут каждый свой жизнью и не от кого не зависят 🤔

Максим Юдин
Тут вопрос, если и родитель берет данные из стора ...

Если компонент получает данные в один способ, то можно попросту делать обращение к API слою в самом компоненте и при этом Vuex не нужен.

Максим Юдин
Тут вопрос, если и родитель берет данные из стора ...

Наличие сторы !== везде данные из сторы получать только через стору

ну вот пинья о простых вещах и микросторах

Максим-Юдин Автор вопроса
Сергей Дёмин
ну вот пинья о простых вещах и микросторах

Вот я примерно так и понял. Но точно так же можно и на вуексе писать. Правда, может выйти не удобно - это вот да

Похожие вопросы

Обсуждают сегодня

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
Добрый день подскажите пожалуйста может кто то сталкивался с ошибками Sentry 22.10.0 развернутым из helm чарт в Kubernetes? Изначально 3 дня назад очень стало много событий ух...
Tire4 Finist Devops
1
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
почому оно не работает?
Vi Chapmann Chapmann
19
всем привет почти закончил курс После него можно писать свою операционку? Какие библиотеки надо использовать и куда дальше копать для изучения
Linus
19
Так а кто может спарсить всех участников чата? Идишники
Magic
18
Карта сайта