разным фильтрам выводят товары, вопрос как правильнее организовать загрузку данных (товаров) с сервера чере ajax, так, что бы компоненты обновлялись при добавлении новых товаров в хранилище. Интересует именно в каком месте вызывать ajax?
Это тема с websocket или server events, вроде как. Ты про двухстороннюю связь?
В странице каталога в хуке mounted думаю, а там реактивность свое дело сделает
Не, все проще. Просто не пойму где делать запрос на сервере. В хранилище или в компонентах
Ну mounted только раз отработает, а у меня фильтры могут обновится
У компонента страницы должно быть что-то вроде анонимного middleware, которое выполнит всю работу, необходимую для отображения страница в Nuxt это называется fetch там должен происходить запрос данных
Почему не просто экшен?
так вызови экшн при пересортировке, или в vue сортируй
action или не action уже другой вопрос, другой уровень абстракции если хочется делать запрос в action, то встает вопрос где вызвать action и опять же ответ будет - в анонимном middleware страницы-компонента
Запросил в экшене стора, получил в компьютед компонента и обработал включёнными фильтрами.
В момент завершения работы экшена, добавляющего новый товар, запусти экшен, читающий товары с сервера. Он обновит стейт товаров. async addProduct(...) { ... добавили товар ... dispatch("readProducts") }
Обсуждают сегодня