В проекте использую пакет/модуль @nuxt/router (
https://github.com/nuxt-community/router-module#readme). Он позволяет использовать router.js как в обычном vue приложении. Тем не менее я не могу задать layout компонент в роутере.
В папке layouts создаю компонент auth.vue. В папке pages создаю компоненты login и register
Ожидаемый результат (код для примера и не из проекта):
const router = new VueRouter({
routes: [
{
path: '/auth', component: Auth,
children: [
{ path: 'login', component: AuthLogin },
{ path: 'register', component: AuthRegister }
]
}
]
})
В итоге получается так, что пути /auth/login или /auth/register будут обернуты в дефолтный layout.
Из документации (
https://nuxtjs.org/docs/2.x/directory-structure/la...)
Every file (top-level) in the layouts directory will create a custom layout accessible with the layout property in the page components.
export default {
layout: 'auth',
// OR
layout (context) {
return 'auth'
}
}
Итого:
- я не хочу указывать layout в компонентах.
- я хочу указать layout в router.js
+ как-то отключить это дефолтное "поведение" nuxt