получать через Фетч с использованием Пинии?
fetch / axios
Я предпочитаю axios, если без нукста. И не держу в сторе того, что мне нужно только в одном компоненте, и только пока он живой. Этой практики вообще не понимаю, всё держать в сторе
данные по апи можно получать при помощи фетча или любой либы-обертки пинья тут ни при чем)
Нет, пинья не для получения данных, а для управления глобальным состоянием. Вокруг fetch можно сделать модуль для работы с хттп в вашем приложении (с учётом всех ваших настроек), затем уже поверх модули с функциями, которые выполняют конкретные действия. И их уже можно вызывать в лучшем случае в компоненте и, когда нужно, в сторе
Значит мне нужно отдельный компонент сделать, реализующий Фетч ну или Аксиос и передать данные в пинию?
вам нужно сделать отдельный сервис, который будет отвечать за получение данных и использовать его внутри стора
типо того, у нас например все запросы вынесены в отдельные функций в папку api, оттуда уже импортируются куда нужно
Зачем тебе данные в пиньи?
Я в пинию загружаю через action
Не компонент, а модуль. И не реализующий, а использующий. И поверх будет ещё слой, потому что есть настройка работы с апи в целом, а есть функции для конкретных операций. И это уже может быть использовано в компонентах или пинья. Но пинья тут не часть работы с апи, только часть приложения
А чем вам не нравится подход Mikhail Kramer ?
Через Actions загружать
Полагаю, имеется ввиду архитектурный вопрос - откуда дёргать апи. Обычно рекомендуется непосредственно запросы вынести в отдельный слой api.js, а из actions импортировать уже их - для облегчения mock тестирования
Нужно передавать))
дык скорее всего он дёргает методы сервиса в экшенах
Задача actions - выполнять действия по изменению глобального состояния
Куда? Сторы - они придуманы для данных, которые тебе нужны в нескольких компонентах. Да, глобальное состояние.
я бы даже сказал "в большинстве компонентов"
Разве actions также не работает с backend api или это только в Vuex?
Только, если эта работа - часть работы с состоянием приложения. Если в action нет вообще работы со стейтом, и это просто функция - ей совсем не место в сторе. Если есть, но единственное использование стора - это куда-то сохранить результат запроса для использования в одном месте - это тоже не глобальное состояние.
Обсуждают сегодня