Nuxt. js: Каков наилучший или практичный способ сохранить запрос в Vuex даже после обновления страницы? - PullRequest
0 голосов
/ 04 марта 2020

Я создаю Reddit-подобное веб-приложение с использованием Nuxt Frontend вместе с Node-Mon go Backend.

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

Ниже приведено описание того, как должно работать приложение:

(1) Маршрут: /page/index.vue Используя asyncData({app, query}), я запрашиваю данные от бэкэнда с топором ios. Список статей можно отсортировать по genre и sort=${sortQuery}. У меня нет проблем с извлечением отсортированного списка статей из бэкэнда с использованием watchQuery: true, предоставленного Nuxt.

(2) Маршрут: /page/:id/index.vue Это где пользователи могут прочитать отдельную статью. Когда страница загружена, выполняется asyncData для извлечения данных currentArticle, а также ArticleList. Когда пользователи органично переходят с /page на /page/:id, отсортированный по запросу список статей сохраняется, поскольку Query был сохранен в Vuex Store.

Проблема: Однако, когда пользователи обновляют страницу sh, невозможно получить отсортированный список статей, поскольку сохраненный Vuex Query не существует ...

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

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

Может кто-нибудь оставить комментарий о том, как решить эту проблему практически?

Дайте мне знать, если потребуется дополнительная информация!

Спасибо, что уделили время заранее :)

1 Ответ

1 голос
/ 04 марта 2020

Я бы передал параметры запроса в пустой текстовой ссылке с первой страницы, например:

<nuxt-link :to="{ path: 'page', query: { genre: 'x' }}">My Article</nuxt-link>

Таким образом, условие сортировки будет сохраняться в URL, и вы можете ссылаться на или поделиться им из любого места / с кем-либо.

...