Nuxt.js запускает промежуточное ПО после отправки магазина - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь создать простое приложение с аутентификацией, используя Nuxt.js . У меня есть промежуточное программное обеспечение auth, которое перенаправляет меня на страницу login, если я не вошел в систему. Проблема в функции logout, которая должна проверять наличие промежуточного программного обеспечения auth на этой странице и перенаправлять меня на login страница, если это так. Я пытался написать

methods: {
    async logout() {
        try {
            await this.$store.dispatch('auth/logout');
            this.$router.push(this.$route.fullPath);
        } catch (e) {
            console.log(e);
        }
    }
}

, но router.push не запускает промежуточное ПО. Что я могу сделать с функцией logout, чтобы она работала?

(Основной вопрос - как вручную перезапустить промежуточное ПО на странице без жесткого обновления, чтобы проверить, требует ли страница аутентификации).

В основном проблема заключается в том, что если logout вызывается на странице, требующей аутентификации, после «проталкивания» текущего пути к маршрутизатору необходимо запустить промежуточное программное обеспечение на текущей странице, поэтому пользователь перенаправляется на login страница вместо того, чтобы оставаться на странице, которая требует аутентификации пользователя.

1 Ответ

0 голосов
/ 08 ноября 2018

$router.push не обновляет страницу по тому же пути. Вы можете попробовать $router.go().

Если вы вызываете go() без аргумента, текущая страница обновляется.

...