Vue перехватывает маршрутизатор в промежуточном ПО NUXT - PullRequest
0 голосов
/ 27 мая 2019

Я пытаюсь закрыть боковую панель, когда мой пользователь меняет маршрут

export default function({ store }) {
    store.commit("TOGGLE_SIDEBAR");
}

Проблема в том, что это вызывает его, как только сайт загружается

Я пытаюсь это

export default function({ app, store }) {
  app.router.beforeEach((to, next) => {
    store.commit("TOGGLE_SIDEBAR");
    next();
  });
}

Я получаю next is not a function.

Как мне заставить это работать?

1 Ответ

1 голос
/ 27 мая 2019

Как указано в документации router.beforeEach(...) ожидает функцию с 3 аргументами: to, from и next.

Поскольку вы передали только два аргумента, аргумент next, который вы пытаетесь вызвать, на самом деле является from Route.

Добавьте третий параметр, как показано ниже:

export default function({ app, store }) {
  app.router.beforeEach((to, from, next) => {
    store.commit("TOGGLE_SIDEBAR");
    next();
  });
}
...