Для моего реактивного веб-приложения я хочу проверять токен аутентификации при доступе к защищенной ссылке. Вот действие для проверки аутентификации:
export const checkAuthState = () => {
return (dispatch) => {
dispatch(loadingStart());
const eAuth = localStorage.getItem('eAuth');
if (!eAuth) {
dispatch(logout());
} else {
const employeeData = JSON.parse(localStorage.getItem('employeeData'));
dispatch(authSuccess(employeeData, eAuth));
}
};
};
Но, поскольку он выполняется асинхронно, состояние eAuth
в reducer равно null
. Итак, пользователь перенаправляется на страницу входа в систему. Есть ли способ дождаться установки eAuth
перед перенаправлением. Я пробовал добавлять состояние loading
в true
, пока authSuccess
не установит его в false
, но это тоже не сработало.