@ByJumping

Как во vue/nuxt запретить роутинг по условию?

Проект на vue 2

export function createRouter() {
  return new Router({
    mode: 'history',
    routes: [
      {
        path: '/',
        component: Index,
        name: 'index',
        beforeEnter: () => {},
      },
      {
        path: '/dashboard',
        component: Dashboard,
        name: 'dashboard',
      },
      {
        path: '/reconstruction',
        component: Reconstruction,
        name: 'reconstruction',
      },
    ],
  });
}


С бекенда будет прилетать флаг тру/фолс и в зависимости от этого я либо показываю приложение, то есть компонент default/index, или если ведутся технические работы я должен показать только 1 компонент - reconstruction и запретить переход по другим компонентам. Не понимаю где нужно пробросить это условие, пока хочу сделать что то вроде if (false) - path: '/reconstruction', и даже если в пути человек введет /login то он ни куда не перейдет
  • Вопрос задан
  • 357 просмотров
Решения вопроса 2
Aetae
@Aetae Куратор тега Vue.js
Тлен
beforeEach, либо заполнять все маршруты динамически через addRoute.
Ответ написан
@ByJumping Автор вопроса
делаю

.beforeEach((to, from, next) => {
const flag = 42;
if (flag !== 42) {
  next('reconstruction');
} else {
  next();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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