Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)

Nuxt嵌套路由官网上的API详解:点击链接

看了官网上的api实现了官网的案例你会发现访问父页面中只能显示父页面中的内容,要想默认的在区域显示一个页面内容怎么办?

Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)_第1张图片

Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)_第2张图片

自己案例代码:

pages/parent.vue



pages/parent/index.vue



pages/parent/child.vue



pages/parent/child2.vue



效果如下:

Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)_第3张图片

Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)_第4张图片

补充知识:nuxt二级路由

耗费了大半天的时间,终于把页面的二级路由配置好了

先看我的目录

Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)_第5张图片

如果没有登陆页,根本就不用考虑嵌套路由的问题,主要的menu跳转和可以直接写到layouts/default.vue中,首页可以放到pages/index.vue,就可以了。

好了,步入核心的

情景,在中间件middleware/authenticated.js

// 定义了一个中间件, 如果用户未登录, 则跳转登录页。
export default function ({
 store,
 redirect
}) {
 if (!store.state.user) {
 return redirect('/login')
 }
}

首先,需要知道,pages/index.vue这个文件必须有,这是给路由'/',定义的页面,但是我真正的首页是在user/index.vue

pages/index.vue下




意思是加载二级路由的pages/users.vue页面




注意,在pages/users/index.vue页面中

export default {
 name: 'users'
}

其他页面,比如pages/users/ditch.vue页面中

export default {
 name: 'users-ditch'
}

一定要这样去写name,官网上也是这样说明的。

总结,嵌套路由(二级路由写法)

一,页面有个user.vue,文件夹也要有个同名的user;

二,最好有index.vue页面;

三,name格式。

源码地址:

https://github.com/besswang/rj-payadmin-nuxt

以上这篇Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值))