Состояние Vuex не получает данные из localStorage - PullRequest
0 голосов
/ 20 июня 2020

Я пытаюсь сохранить токен JWT в localStorage, после входа в систему токен и имя пользователя фиксируются в состоянии и сохраняются в localStorage. Все это делается в модуле vuex src/store/auth/index.js

  login({ commit }, userData) {
    return new Promise((resolve, reject) => {
      axios.post('http://localhost:5000/login', {
        username: userData.username,
        password: userData.password,
      }).then((response) => {
        localStorage.setItem('token', response.data.token);
        axios.defaults.headers.common.token = response.data.token;
        commit('authUser', response.data);
        resolve(response);
      }).catch((error) => {
        reject(error);
      });
    });
  },

Вот мое действие входа в систему, все здесь работает, как ожидалось, и токен хранится в localStorage под именем 'token'

const state = {
  username: null,
  token: localStorage.getItem('token') || '',
};

Вот мое состояние, в тот момент, когда я обновляю sh страницу, отладчик Vue сообщает, что и токен, и имя пользователя равны нулю. Почему state.token извлекает элемент токена из localStorage?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...