Задать вопрос
Kentavr16
@Kentavr16
long cold winter

Как перерендерить компонент при добавлении токена в localStorage?

В компоненте с формой входа я использую следующую логику:
let navigate = useNavigate();
  useEffect(() => {
    const token = window.localStorage.getItem("token");
    if (token) {
      navigate("../cabinet", { replace: true });
    }
  },);

Т.е. приходит ответ сервера => токен записывается в локальное хранилище => происходит перенаправление на страницу с кабинетом пользователя.
Проблема в компоненте с навигацией. Нужно чтобы добавление токена запускало ререндер. Вот код:
{token? (
        <button className="signout" onClick={deleteToken}>
          exit
        </button>
      ) : (
        <nav>
          <Link to="/registration">registration</Link>
          <Link to="/signin">signin</Link>
        </nav>
      )}


Как реализовать обновление компонента с навигацией после того, как токен добавляется в localstore?
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Javascript.ru
    Курс по React
    5 недель
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
Kentavr16
@Kentavr16 Автор вопроса
long cold winter
Отвечу сам себе - используя параметры УРЛ, контекст или редакс.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы