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

Ребят, может у кого-нибудь есть опесорс код, vuejs+работа с Api?

Не совсем понимаю как правильно работать с апи

52 ответов

16 просмотров

запросы умеешь делать в бэк ?

Mandico🔮- Автор вопроса
Nikolai Demin
запросы умеешь делать в бэк ?

Вроде как получается делать, но не знаю, правильно ли я это делаю)

Mandico🔮- Автор вопроса
Mandico🔮- Автор вопроса
Nikolai Demin
покажи

https://pastebin.com/8jM4TxHJ вотс

Mandico🔮
https://pastebin.com/8jM4TxHJ вотс

вот и переносишь эти методы работы с пользователем во Vuex

Mandico🔮
Вроде как получается делать, но не знаю, правильно...

https://vuex.vuejs.org/ru/#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%C2%AB%D0%BF%D0%B0%D1%82%D1%82%D0%B5%D1%80%D0%BD-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F-%D1%81%D0%BE%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%B8%D0%B5%D0%BC%C2%BB

Задорный Копатыч Волошин
Почто человека плохому учите

Я кстати тоже не вижу прикола запросы в vuex пихать, но да ладно).

Yusif Zourab
Я кстати тоже не вижу прикола запросы в vuex пихат...

так а что ему в каждом компоненте писать запрос для получения данных пользователя ?

Nikolai Demin
так а что ему в каждом компоненте писать запрос дл...

Нет конечно. Лично я создаю отдельную папку "classes\Api" и туда добавляю классы с методами которые и описывают весь api. Получается весь api в отдельном месте и проще работать так.

Yusif Zourab
Я кстати тоже не вижу прикола запросы в vuex пихат...

У нас на проектах есть ряд запросов которые повторяются на кучах компанент и страниц, мы их вызываем в начале запихиваем в стейт и тянем гетерами. Не знаю хорошо ли это или плохо, но это работает и достаточно удобно.

Dmitriy Krasikov
У нас на проектах есть ряд запросов которые повтор...

И это хорошо. Каждый пишет как сам считает лучше и делиться опытом. Но согласитесь, удобно когда api отдельно, а хранилище отдельно.

Nikolai Demin
вот и переносишь эти методы работы с пользователем...

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

Yusif Zourab
И это хорошо. Каждый пишет как сам считает лучше и...

я других проектов не видел)))) Работал на React пришел в новую орг. сказали ''Нужен vue, у нас vue'' у них здесь все + - так и написано. Мне вот интересно есть ли большие открытые проекты на гите что бы глянуть как люди нормально пишут?

Dmitriy Krasikov
У нас на проектах есть ряд запросов которые повтор...

Раньше тоже думал что это удобно и хорошо, пока не настала пора рефакторить, тогда я проклял такой подход :)

Dmitriy Krasikov
я других проектов не видел)))) Работал на React пр...

Как пример. Гуглишь: "Vue awesome" (сборник пакетов для всего на Vue) и изучаешь популярные пакеты. Только смотреть надо несколько чтобы увидеть как пишут код разные люди.

Vladimir Voytenko ️
Нинада, потом это будет слабо поддерживаемо, лучше...

Понял, что в новом приложении все хорошо, когда открыл после горы работ vuex, а там пусто.

Vladimir Voytenko ️
Нинада, потом это будет слабо поддерживаемо, лучше...

так если данные нужно в нескольких компонентах или во всех ? в чем принципиальная разница в том что вы храните все методы для работы в отдельной папке от того чтобы хранить их так же в Vuex ? создаешь хранилише Vuex для user, в нем только работа с юзером, подключаешь где надо.. так же для других данных если нужно

Nikolai Demin
так если данные нужно в нескольких компонентах или...

Во всех данные почти никогда не нужны, писать сами забросы к апи в экшенах уж точно дорога в ад, нужен хотя бы api layer. Vuex это очень дорого в плане производительности ибо это второй вью

Vladimir Voytenko ️
Во всех данные почти никогда не нужны, писать сами...

можете посоветовать статью на эту тему почитать ?

Nikolai Demin
можете посоветовать статью на эту тему почитать ?

нет, но вчера я тут писал причины и решения

Vladimir Voytenko ️
Во всех данные почти никогда не нужны, писать сами...

> писать сами забросы к апи в экшенах уж точно дорога в ад, why ??

Nikolai Demin
> писать сами забросы к апи в экшенах уж точно до...

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

Nikolay
хранилище нужно для того чтобы шерить стейт на все...

то есть выполнять запрос в компоненте и оправлять полученные данные в мутацию ? и хранить методы api в отдельной папке ?

Nikolai Demin
то есть выполнять запрос в компоненте и оправлять ...

грубо говоря да. Завтра в приложении решат отказаться от vuex, а у вас весь фетч данных в нем. Или бизнес-логика вокруг фетча изменится и вьюкс внезапно превратится еще и в хранилище бизнес-логики

Nikolay
грубо говоря да. Завтра в приложении решат отказат...

что значит решат отказаться ? в пользу чего ? и главное зачем ?

Nikolai Demin
что значит решат отказаться ? в пользу чего ? и гл...

в пользу других решений для реализации хранилища, самый распространенный пример переезд на apollo-graphql, у которого свое хранилище

Nikolai Demin
то есть выполнять запрос в компоненте и оправлять ...

нет, просто вместо вызова fetch/axios.get в экшне должен быть вызов getUser()

Anton Permyakov
нет, просто вместо вызова fetch/axios.get в экшне ...

а getUser в папке для API логика не меняется, просто создается API Layer Vuex никуда не девается

Anton Permyakov
нет, просто вместо вызова fetch/axios.get в экшне ...

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

Nikolay
Нет, вызов getUser должен быть в той части vue при...

скажите, для чего тогда существуют actions в Vuex ?

Nikolai Demin
скажите, для чего тогда существуют actions в Vuex ...

для выполнения асинхронных операций

Nikolay
для выполнения асинхронных операций

запросы и есть асинхронные операции

Nikolay
Нет, вызов getUser должен быть в той части vue при...

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

Nikolai Demin
запросы и есть асинхронные операции

мы с вами не о событийном цикле спорим а об архитектуре

Anton Permyakov
это только запутывает логику, если хочешь хранить ...

работа с ним более чем очевидна, есть состояние, мутации и экшены

Nikolay
работа с ним более чем очевидна, есть состояние, м...

приходит новый разраб, заходит во Vuex и не находит откуда хранилище получает данные, только мутацию setUser....

Nikolai Demin
приходит новый разраб, заходит во Vuex и не находи...

приходит как то новый разраб, заходит в компонент Button и не видит откуда текст в кнопке появился, есть только <slot />

Nikolay
приходит как то новый разраб, заходит в компонент ...

так тут button зависит от родителя а с Vuex данные шарятся между компонентами

Nikolay
приходит как то новый разраб, заходит в компонент ...

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

Nikolai Demin
так тут button зависит от родителя а с Vuex данные...

А вызов мутации зависит от контекста, разработчики даже на днях выкатили фичу по маппингу мутаций и экшенов в компоненты

Anton Permyakov
слоты это общепринятый способ работать с компонент...

Я не утверждал, что нужно часть логики хранить во вьюксе, а часть в компонентах. Я утверждал, что выполнять реквесты из хранилища это катастрофа

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

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

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
кто-то пользуется компонентами rx ? как их лучше ставить, через OPM? (lazarus)
Iluha Companets
10
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
Слушайте, ещё такая интересная задачка. Сделан аудит действий пользователей через триггеры в базе, соответственно каждый пользователь имеет свой логин и пароль в базе. Это пре...
Сергей Бычков
12
Скажите, тут нет проблемы? IMyInterface1 = interface function GetInterface2: IInterface2; ... function TMyInterface.GetInterface2: IInterface2; begin Result := TI...
Ruslan aka DUDE
18
вопрос по москвину - не понимаю вот такого вопроса похоже Сколько разных всегда завершающихся функций с типом a -> a -> b -> a -> a можно реализовать? Две функции одинаково...
Fedor
11
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
что, сложно ифдеф на версию компилятора сделать?
Iluha Companets
6
Карта сайта