当前位置:网站首页>Router对象、Route对象、声明式导航、编程式导航
Router对象、Route对象、声明式导航、编程式导航
2022-04-23 05:54:00 【MiMenge】
Router和Route
当我们创建实例VueRouter时
let router = new VueRouter();
会有一个全局的router路由器对象, 这个路由器对象在其他路由组件上可以通过路由组件的实例.$router的方式访问到
当跳转到一个新的路由时,会创建一个新的route实例对象,每一个路由实例都是唯一的, 保存着当前路由的状态信息。
注意:在应用中只存在唯一的Router对象,在每个路由组件中访问到的Router对象都是一个Router实例,互相之间是相同的,但是每个路由之间的route是不相同的。
属性方法
$router
console.log(this. $ router);
- 属性
| 属性 | 描述 |
|---|---|
| options | 保存了创建路由的原始配置对象 |
| currentRoute | 当前路由的地址信息和this.$route一致 |
- 方法
+ 方法
- addRoute(parentName, route) : 添加一条行的路由记录到路由
- afterEach(to, from, failure) : 全局的路由导航后置守卫, 每次在切换路由后执行
- beforeEach(to, from, failure): 全局的路由导航前置守卫, 每次在切换路由前执行
- push({
path:路由路径,
name:路由名称,
query:{
}传递的query参数,
params:{
}传递的params参数,
}): 跳转到一个路由,以编程式导航的方式跳转, 传入一个对象
与声明式路由导航配置属性一致,因为是向记录栈中推入一条记录
所以跳转后回退 会回退到 之前的路由记录(未替换)
- replace({
}) : 跳转到一个路由 ,以编程式导航的方式导航,参数和push一致
因为将路由记录栈的当前记录给替换了,所以跳转后不能回退到之前的记录
只能回退到之前记录的上一条记录(已替换)
- resolve({
}): 跳转到一个新的页面,参数和push一致
- back(): 回退到上一个路由
- forward(): 在历史路由向前进一个路由记录
- getRoutes(): 获取路由的完整列表
- go(num): 在历史路由记录中前进或后退,前或后取决于参数的正负
- hasRoute(routeName): 检测是否有指定name的路由
- removeRoute(routeName): 移除路由记录栈中对应名称的路由记录
- onError(function(err)···): 捕获导航期间发生的错误
$route
console.log(this.$route);
- fullPath : 跳转该路由的完整路径
- hash: 当前路由的hash值, 无则为空
- meta: 路由元信息
- name:路由定义的名称
- matched : 数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。
- path: 对应当前路由的绝对路径(获取)
- params: 当前路由的params参数(获取)
- query: 当前路由的query参数(获取)
声明式导航和函数式导航
导航:
一个路由被执行一次,就是一次导航。导航可以分为声明式导航和编程式导航。
声明式导航:
一个路由组件(如 router-link)通过点击等方式实现路由跳转,这个过程称为“声明式导航(静态)”。
编程式导航:
切换执行并不通过声明式导航实现,通过程序代码的方式给实现出来,就是“编程式导航(动态)”。
编程式导航的实现:
通过路由器对象直接使用js代码操作
1.声明式导航是直接渲染到页面的,比如a链接
2.编程式导航则是用在js处理逻辑后需要页面跳转,比如点击button按钮跳转
版权声明
本文为[MiMenge]所创,转载请带上原文链接,感谢
https://blog.csdn.net/m0_53584564/article/details/124151522
边栏推荐
猜你喜欢

查漏补缺(六)
![微信小程序之点击取消,返回上页,修改上页的参数值,let pages=getCurrentPages() let prevPage=pages[pages.length - 2] // 上一页的数据](/img/ed/4d61ce34f830209f5adbddf9165676.png)
微信小程序之点击取消,返回上页,修改上页的参数值,let pages=getCurrentPages() let prevPage=pages[pages.length - 2] // 上一页的数据

QT icon application

VHDL finite state machine (FSM) code example

2020 Jiangsu Collegiate Programming Contest-A.Array

基于TensorFlow的线性回归实例

HDU-Tunnel Warfare

浮点数双精度,单精度以及半精度知识总结

FOC SVPWM函数PWMC_SetPhaseVoltage解析

JS中 t, _ => 的解析
随机推荐
约瑟夫序列 线段树 O(nlogn)
C语言代码规范
【无标题】js中的类型判断
Collection of practical tips for C language (continuously updated)
ES6的新特性
Makefile foundation, common functions and general makefile
realsense 选型大对比D455 D435i D415 T265 3D硬件对比
统计字符串中每个字符出现的次数
说说ts的心里话
深蓝学院激光slam理论与实践 -第二章(里程计标定)作业
汇编 32位无符号加法计算器
Detailed explanation and application principle of token
Palindromic Primes
TensorFlow张量介绍
PN结、二极管原理详解与应用
FOC 单电阻采样 位置环控制伺服电机
提交本地仓库并同步码云仓库
元素计算距离与event事件对象
Log writing method (with time)
useCenterHook