Я создаю приложение в Vue. Мне нужно хранить информацию для дальнейшего использования, это хороший способ использовать js-cookie? - PullRequest
0 голосов
/ 02 апреля 2019

Я пытался использовать Vuex для хранения информации, которую пользователь выбирает в моем приложении, но как только я перезагрузил страницу, она исчезла.Затем я начал использовать Cookies, js-cookie и он отлично работает.Я чувствую, что с этим должно быть что-то плохое. Зачем вам использовать vuex, если вы просто можете использовать cookie?Я не обнаружил каких-либо проблем с использованием файлов cookie, но в какой-то мере возникает ощущение, что в этом должно быть что-то плохое.

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

Ответы [ 2 ]

1 голос
/ 02 апреля 2019

Vuex - это хранилище в памяти. Это проясняется, как только страница перезагружается. Вы хотите более постоянное хранилище. Существует несколько опций: localalstorage, sessionstorage, cookie и indexedDB.

Cookies отправляются вместе с каждым вашим запросом на сервер. Это, вероятно, не нужно для вас или что вы хотите.

Локальное хранилище должно нормально работать.

Проверьте vuex-persistedstate, который синхронизируется между Vuex и localalstorage.

https://github.com/robinvdvleuten/vuex-persistedstate

Это, вероятно, то, что вы хотите использовать.

0 голосов
/ 02 апреля 2019

Это пример локального хранилища из https://vuejs.org/v2/cookbook/client-side-storage.html. Это будет хранить имя вашего автомобиля, даже если вы закроете сеанс.

    <div id="app">
      My car <input v-model="carName">
    </div>

     const app = new Vue({
      el: '#app',
      data: {
        carName: '',

      },
        mounted() {
    if (localStorage.carName) {
      this.carName = localStorage.carName;
    }
  },

      watch: {
        name(newName) {
          localStorage.carName = carName;
        }
      }
    });
...