vue-router 路由嵌套显示不出来_Vue-前端路由

f9de73b9389b5bba075f8e00e30c489d.png

一、路由的基本概念

路由的本质就是对应关系,在开发中,分为前端路由和后端路由。

1. 后端路由

概念:根据不同的用户 URL 请求,返回不同的内容

本质:URL 请求地址与服务器资源之间的对应关系

  • 后端路由有性能问题,Ajax前端渲染提高性能,但是不支持浏览器的前进后退操作
  • SPA(Single Page Application)单页面应用程序:整个网站只有一个页面,内容的变化通过Ajax局部更新实现、同时支持浏览器地址栏的前进和后退操作
  • SPA实现原理之一:基于URL地址的hash(hash的变化会导致浏览器记录访问历史的变化、但是hash的变化不会触发新的URL请求)
  • 在实现SPA过程中,最核心的技术点就是前端路由

2. 前端路由

概念:根据不同的用户事件,显示不同的页面内容

本质:用户事件与事件处理函数之间的对应关系

2.1 实现简易版前端路由

占位符是动态显示的部分

<

Vue

// 定义组件

显示:

bb03d995b18fd39539967edf0c2a6c24.gif

二、Vue Router 路由管理器

官网:https://router.vuejs.org/zh/

  • 支持HTML5 历史模式或 hash 模式
  • 支持嵌套路由
  • 支持路由参数
  • 支持编程式路由
  • 支持命名路由

1. 基本使用

  1. 引入相关的库文件
  2. 添加路由链接
  3. 添加路由占位符
  4. 定义路由组件
  5. 配置路由规则并创建路由实例
  6. 把路由挂载到 Vue 根实例中
<!-- 1.导入 vue 文件 -->

显示:

1cfab1b1722550c258af896c6db3df6c.gif

2. 路由重定向

路由重定向指的是:用户在访问地址 A 的时候,强制用户跳转到地址 C 。

通过路由规则的 redirect 属性,指定一个新的路由地址。

更改上个案例,只添加了一句

const 

显示:

5c318ded1691c5311b4dc65e5d81f892.gif

3. 嵌套路由

<

显示:

aee00331644a0223591e49be8649a3d5.gif

4. 动态匹配路由

<

显示:

01f5671979e8c37be66776b48f20b982.gif
更方便的使用请求参数id

如果 props 被设置为 true,route.params 将会被设置为组件属性

<

显示:与上一个相同

使用更多参数
<

显示:

a2d74c0c09b0f34335259b4e4ca1dcf3.gif

5. 路由命名

给路由命名后,链接更简单

<

显示:与上一个相同

6. 编程式导航

  • 声明式导航:通过点击链接实现导航的方式,叫做声明式导航

例如:普通网页中的 <a></a> 链接 或 vue 中的 <router-link></router-link>

  • 编程式导航:通过调用JavaScript形式的API实现导航的方式,叫做编程式导航

例如:普通网页中的 location.href

常用的编程式导航 API 如下:

  • this.$router.push('hash地址') 跳转到指定页面
  • this.$router.go(n) -1 后退一页 1 前进一页
<

显示:

7c8c644f79677240c324d0c33332fdb3.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值