当前位置: 首页 > news >正文

router和route的区别

简单理解为,route是用来获取路由信息的,router是用来操作路由的。

一、router


router是VueRouter的实例,通过Vue.use(VueRouter)和VueRouter构造函数得到一个router的实例对象,这个对象中是一个全局的对象,他包含了所有的路由包含了许多关键的对象和属性。例如history对象

 

 $router对象是全局路由的实例,是router构造方法的实例

1. $router.go()

    $router.back 后退   

    页面路由跳转 $router.go(-1)为后退,$router.go(-1)为前进  $router.forward()为前进

2. $router.push()

    - 字符串this.$router.push('home')

    - 对象this.$router.push({path:'home'})

    - 命名的路由this.$router.push({name:'user',params:{userId:123}})

    - 带查询参数,变成 /register?plan=123this.$router.push({path:'register',query:{plan:'123'}})

    - push方法其实和<router-link :to="...">是等同的。

    *注意:push方法的跳转会向 history 栈添加一个新的记录,当我们点击浏览器的返回按钮时可以看到之前的页面。

3. $router.replace()        常用来做404页面

    push方法会向 history 栈添加一个新的记录,而replace方法是替换当前的页面,

    不会向 history 栈添加一个新的记录

    this.$router.replace('/') 跳转到首页

二、route


route是路由信息对象,每一个路由都会有一个route对象,是一个局部的对象,里面主要包含路由的一些基本信息,比如name、meta、path、hash、query、params、fullPath、matched、redirectedFrom...

 

1. $route.name       

 当前路径名字

2. $route.meta        

路由元信息

3. $route.path        

字符串,对应当前路由的路径,总是解析为绝对路径,如"/foo/bar"。

4. $route.hash        

当前路由的hash值 (不带#) ,如果没有 hash 值,则为空字符串。锚点*

5. $route.query      

 一个 key/value 对象,表示 URL 查询参数。例如,对于路径 /foo?user=1,则有$route.query.user == 1,对于 /index?id=1 ,会得到 $route.query.id == 1。如果没有查询参数,则是个空对象。

6. $route.params      

 一个 key/value 对象,包含了 动态片段 和 全匹配片段,如果没有路由参数,就是一个空对象。

7. $route.fullPath      

 完成解析后的 URL,包含查询参数和hash的完整路径。

8. $route.matched      

 数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。


原文链接:https://blog.csdn.net/Senora/article/details/125237003

http://www.lryc.cn/news/117746.html

相关文章:

  • 每日后端面试5题 第五天
  • BGP基础实验
  • 在excel中整理sql语句
  • Vue中下载不同文件的几种方式
  • Ethernet/ip协议开发记录
  • Spring系列三:基于注解配置bean
  • git的简单介绍和使用
  • uni-app运行微信开发工具小程序,出现× initialize报错
  • UNet Model
  • vue+iviewUi+oss直传阿里云上传文件
  • 算法leetcode|68. 文本左右对齐(rust重拳出击)
  • 基于MATLAB实现小波算法仿真(附上多个完整源码+数据集)
  • 【深度学习注意力机制系列】—— CBAM注意力机制(附pytorch实现)
  • 【资料分享】全志科技T507-H工业核心板规格书
  • Profibus-DP转modbus RTU网关modbus rtu和tcp的区别
  • AlmaLinux 9 安装 Edge 和 Chrome
  • NGINX——负载均衡
  • C#实现端口扫描和执行cmd命令、调用摄像头
  • 【图像恢复】基于交替乘子方法(ADMM)图像恢复算法研究[固定点收敛和应用](Matlab代码实现)
  • Qt 使用QLabel的派生类实现QLabel的双击响应
  • 关于@JSONField的使用
  • Centos7单机部署ElasticSearch
  • js玩儿爬虫
  • 新利好带动 POSE 持续上扬,月内几近翻倍
  • Windows terminal 添加 git bash 解决git中文乱码显示问题
  • C语言实现选择排序
  • unable to write symref for HEAD: Permission denied
  • 长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析等领域中的实践技术应用
  • 【行为型设计模式】C#设计模式之策略模式
  • Linux Shell 编程入门