47. Vue使用children属性实现路由嵌套

2024-08-21 03:48

本文主要是介绍47. Vue使用children属性实现路由嵌套,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

前面基本演示完了vue-router的基本用法,但是当组件之间嵌套子组件,这个嵌套的路由该怎么写呢?

可能这一句话不能够直接说明情况,下面来直接看例子。

嵌套路由示例

1.首先写三个组件,一个account组件,另外两个子组件login和register

<script>        // 1. 定义 (路由) 组件。// 可以从其他文件 import 进来// 创建account组件var account = {template: "#account",}// 创建登陆组件loginvar login = {template: "<h3>登陆组件</h3>",}// 创建注册组件registervar register = {template: "<h3>注册组件</h3>",}

2.编写这三个组件的路由规则,如下:

// 2. 定义路由// 每个路由应该映射一个组件。 其中"component" 可以是// 通过 Vue.extend() 创建的组件构造器,// 或者,只是一个组件配置对象。// 我们晚点再讨论嵌套路由。var routes = [{ path: '/', redirect: '/account' },{ path: '/account', component: account },{ path: '/account/login', component: login },{ path: '/account/register', component: register },]// 3. 创建 router 实例,然后传 `routes` 配置// 你还可以传别的配置参数, 不过先这么简单着吧。var router = new VueRouter({routes, // (缩写) 相当于 routes: routeslinkActiveClass: "myactive", // 自定义选中的class})// 创建vue的实例var vm = new Vue({el: '#app',data: {},methods:{},             // 注册局部组件,注意:下面使用vue-router的话,不需要在这里注册组件components:{},// 将路由规则对象,注册到 vm 实例上,用来监听 URL 地址的变化,然后展示对应的组件router,  // 等价于 router: router})</script>

可以从上面看到,我在写regsterlogin的路由路径是/account/register/account/login,其实跟/account路由没有太大的关系。

只是简单写了个前缀而已。

3.编写组件展示的router-view

<div id="app"><router-link to="/account">Account</router-link><!-- 路由出口 --><!-- 路由匹配到的组件将渲染在这里 --><transition mode="out-in"><router-view></router-view></transition></div><template id="account"><div><h1>这是 Account 组件</h1><!-- 设置嵌套组件的跳转标签 --><router-link to="/account/login">登录</router-link><router-link to="/account/register">注册</router-link><!-- 设置嵌套组件的router-view --><router-view></router-view></div></template>

可以看到,父组件app下只能直接访问account组件,然后再通过account组件访问loginregister嵌套组件。

下面来看看效果。

4.在浏览器中点击登陆组件,确认是否在account组件下,显示登陆组件。

image-20200222223639400

实际效果如下:

image-20200222223728252

5.使用children属性,修改嵌套路由规则

image-20200222224024009
// 2. 定义路由// 每个路由应该映射一个组件。 其中"component" 可以是// 通过 Vue.extend() 创建的组件构造器,// 或者,只是一个组件配置对象。// 我们晚点再讨论嵌套路由。var routes = [{path: '/',redirect: '/account'},{path: '/account',component: account,// 使用 children 属性,实现子路由,同时,子路由的 path 前面,不要带 / ,// 否则永远以根路径开始请求,这样不方便我们用户去理解URL地址children: [{path: 'login',component: login},{path: 'register',component: register}]},]

6.在浏览器查看嵌套路由的效果

image-20200222224118563

可以看到,登陆组件是在Account组件内嵌套显示了。

当然,注册组件也是一样。这样就实现好了一个嵌套组件的效果。

image-20200222224156789

更多精彩原创Devops文章,快来关注我的公众号:【Devops社群】 吧:

image
image

这篇关于47. Vue使用children属性实现路由嵌套的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1092035

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

C++中unordered_set哈希集合的实现

《C++中unordered_set哈希集合的实现》std::unordered_set是C++标准库中的无序关联容器,基于哈希表实现,具有元素唯一性和无序性特点,本文就来详细的介绍一下unorder... 目录一、概述二、头文件与命名空间三、常用方法与示例1. 构造与析构2. 迭代器与遍历3. 容量相关4

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

C++中悬垂引用(Dangling Reference) 的实现

《C++中悬垂引用(DanglingReference)的实现》C++中的悬垂引用指引用绑定的对象被销毁后引用仍存在的情况,会导致访问无效内存,下面就来详细的介绍一下产生的原因以及如何避免,感兴趣... 目录悬垂引用的产生原因1. 引用绑定到局部变量,变量超出作用域后销毁2. 引用绑定到动态分配的对象,对象

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java AOP面向切面编程的概念和实现方式

《JavaAOP面向切面编程的概念和实现方式》AOP是面向切面编程,通过动态代理将横切关注点(如日志、事务)与核心业务逻辑分离,提升代码复用性和可维护性,本文给大家介绍JavaAOP面向切面编程的概... 目录一、AOP 是什么?二、AOP 的核心概念与实现方式核心概念实现方式三、Spring AOP 的关

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置