загружать, сохранять и перезагружать aiax api-ответы с помощью vuex - PullRequest
0 голосов
/ 29 октября 2018

У меня есть приложение vue3, которое служит в качестве интерфейса asp.net core 2 api.

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

Проблема в том, что большая часть этих данных сильно меняется, поэтому я должен быть в состоянии указать vuex обновить данные через некоторое время. Но я не хочу обновлять все запрошенные данные, поскольку некоторые из них не нужно обновлять так часто, а некоторые нет вообще (например, список стран).

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

Мои вопросы: есть ли плагин для этого, который я не смог найти? И если нет, как я могу реализовать описанную функциональность, не переписывая ее для каждого запроса?

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Доступно несколько проектов кеша axios:

2 самых популярных в настоящее время: axios-extensions и axios-cache-adapter

npm trends Источник диаграммы

0 голосов
/ 29 октября 2018

Существует библиотека axios-cache-adapter , которая является плагином для axios, позволяющим кэшировать ответы.

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

Может использоваться как с localstorage, так и с indexedDB (через localforage библиотека)

...