где нужно выполнять сетевые запросы в vue ?
Прост начинаю что -то крупное создавать и выполнять запросы в компонентах мне кажется не самой лучшей идей, поэтому начал гуглить. В гугле линки в основном из типа "как выполнить ajax запрос", поэтому решил написать сюда
в api/сетевом слое, который уже будет дергаться по месту
Я +/- понимаю, что нужна доп прослойка, но как это в проекте организовать - не знаю или не уверен в своих знаниях
На самом деле "как угодно". Если вы только начали убирать запросы из компонентов, то любой вариант в отдельном модуле будет лучше. Просто вариант, делаете "папочку" api, там создаёте модули под разные группы API запросов (по задачам, или по сущностям, или как вам удобнее дробить). В каждом функции с запросами как угодно. Можно просто отдельно функции экспортить. Можно объект с методами. Дальше это просто экспортируете в компонент, где он вам нужен. Можно, конечно, и внедрять в компоненты. Через provide или контекст компонента, и даже плагин для этого сделать, но вам это скорее всего не даст ничего, кроме дополнительной работы.
Благодарю за такой краткий, но очень весомый ответ. Верно ли я понял, что проще будет сделать так: создать какую -то директорию(/api) в которой описать взаимодействия с сетью, а в компонентах уже дергать данные из этого "api"? Я слышал, что правильнее будет использовать стейт менеджер, который будет посредником между сетью и компонентами
стейт менеджер решает абсолютно другую задачу, функции из апи можно использовать и в компонентах, и в стейт менеджере
Даже если использовать стейт менеджмент, то он самый также пусть дёргает методы апи собранные в отдельном месте
Мне понадобится в дальнейшем использовать vuex, ибо будет N огромных компонентов, который так -же будет ветвистыми. Имеет ли сейчас выносить взаимодействия с сетью в vuex для получения данных и т.д ?
если компоненты планируется переиспользовать, то не стоит
Благодарю) Буду тогда что -то начинать делать)
Имеет смысл выносить взаимодействие с сетью в отдельный слой впринципе. А будете ли вы этот слой использовать в компонентах или в экшнах vuex вопрос будущего (когда вы решите использовать стейт менеджмент)
Да, я понял, что обязательно нужен будет отдельный слой)
Обсуждают сегодня