Перезагрузите компонент с помощью vue-router - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть проект с Vuejs и Vue-Router.Когда пользователь вносит платеж (вход в систему), сервер возвращает файл Json с токеном, именем пользователя и именем, этот файл сохраняется в локальном хранилище для использования в следующих запросах.Имя используется в макете для отображения приветствия сообщения в навигационной панели.После выхода из системы localstorage очищается, и проблема заключается в том, что другой пользователь, заплативший в сообщении, не может перезагрузить компьютер с новым именем.

<v-chip>{{bienvenida}}</v-chip>

computed: {
  bienvenida() {
    const user = JSON.parse(localStorage.getItem("user"));
    return user ? `Bienvenido ${user.firstName}` : "";
  }
}

1 Ответ

0 голосов
/ 25 ноября 2018

LocalStorage не реагирует, поэтому вычисляемое свойство не реагирует на изменение localStorage.Существуют различные способы , чтобы обойти это, но самый простой способ - просмотреть внутреннее свойство и просто сохранить значения в localStorage.

Один из правильных способов сделать это - использовать Vuex (официальное управление состоянием Vue) для хранения ваших данных в магазине Vuex.Затем существует плагин Vuex для сохранения всего хранилища или его частей в локальном хранилище или хранилище сеанса.Хранилище Vuex является реактивным, поэтому вы можете просто наблюдать за изменениями в вашем вычислительном свойстве.

...