Middleware Nuxt

Nuxt предоставляет мидлвары, которые отрабатывают до перехода по навигации к нужному роуту (углу)

Есть 3 способа определения мидлвара в наксте:

  • Инлайновая мидлвара в виде функции внутри definePageMeta

  • Именованная мидлвара, которую можно вызвать по названию в нужной странице асинхронно

  • Глобальная мидлвара, которая отрабатывает на всех роутах и не требует определения. Определяется через name.global.ts Определим мидлвар в middleware/auth.ts `import { useUser } from '~/src/entities/user/model/user';

export default defineNuxtRouteMiddleware(() => { const user = useUser(); const token = useCookie('token'); if (user.user.id.length === 0 && !token.value) { return navigateTo('/', { redirectCode: 401 }); } });

Определим мидлвар в компоненте pages/profile.vue

`definePageMeta({ middleware: [‘auth’], });``