dragonika8
@dragonika8
FrontEnd-Разработчик

Как правильно заблокировать доступ к роуту?

Хочу заблокировать доступ не авторизированным пользователям.

Написал вот такой код.

router.beforeEach((to, from, next) => {
  const authUser = localStorage.getItem("auth");
  const profilePages = ["/profile"];
  const orderPaymnetPages = ["/order-payment"];
  const authRequired = !profilePages.includes(to.path);
  const authRequired2 = !orderPaymnetPages.includes(to.path);

  if (authRequired && authRequired2 && !authUser) {
    next("/");
  }
  next();
});


Но он выдаёт ошибку RangeError: Maximum call stack size exceeded.

Нужно чтобы блокирован доступ к роуту /profile и /order-payment

Как можно исправить ?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега Vue.js
Тлен
У тебя по кругу отрабатывает next("/");.
Добавь в if to.path !== '/'.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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