首页 > 其他分享 >vue中router与route区别

vue中router与route区别

时间:2023-07-22 23:45:19浏览次数:29  
标签:vue 对象 route 路径 push router 路由

vue-router中经常会操作的两个对象route和router两个。

1、$route对象

 $route对象表示当前的路由信息,包含了当前 URL 解析得到的信息。包含当前的路径,参数,query对象等。

 

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

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

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

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

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

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

7.    $route.name    当前路径名字

8.    $route.meta  路由元信息

导航钩子的参数:

    router.beforeEach((to,from, next)=>{//to 和from都是 路由信息对象,后面使用路由的钩子函数就容易理解了})

2、$router对象

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

 

路由实例方法:

1、push

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

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

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

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

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

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

2、go

     页面路由跳转 

     前进或者后退this.$router.go(-1)  // 后退

3、replace

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

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

4.一般使用replace来做404页面

    this.$router.replace('/')

    配置路由时path有时候会加 '/' 有时候不加,以'/'开头的会被当作根路径,就不会一直嵌套之前的路径。

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

 

标签:vue,对象,route,路径,push,router,路由
From: https://www.cnblogs.com/smile-fanyin/p/17574526.html

相关文章

  • vue中query和params的区别是什么
    区别:1、query用path编写传参地址,而params用name编写传参地址;2、query刷新页面时参数不会消失,而params刷新页面时参数会消失;3、query传的参数会显示在url地址栏中,而params传参不会显示在地址栏中。vue中query和params的区别是什么query语法:this.$router.push({p......
  • 2023年最新50道Vue全套vue2+vue3面试题带答案汇总
    此文章不断更新,欢迎大家在评论区补充1.什么是MVVM?M-Model数据:它是与应用程序的业务逻辑相关的数据的封装载体V-View视图:它专注于界面的显示和渲染VM-ViewModel视图-数据:它是View和Model的粘合体,负责View和Model的交互和协作vue双向数据绑定是通过数据劫持结合......
  • vue-day37--修改默认配置
    1.vue脚手架文件结构 2.不同的版本vue3.修改默认配置  修改默认配置1.查看脚手架的默认配置vueinspect>output.js2.为什么main.js是入口文件,index.html是首页调整vue.config.js......
  • vue--day36--render函数
    1.脚手架里面为什么main.js里面,使用了render函数/***该文件是整个项目的入口文件*///引入VueimportVuefrom'vue'//引入App组件他是所有组件的父组件importAppfrom'./App.vue'//关闭vue的生产提示Vue.config.productionTip=false//创建Vue实例对象--vm......
  • Vue 中不同页面之间如何进行传值
    情景:比如页面1中获取到的值,页面2中需要用到,如何将页面1中的值传递给页面2呢?解决方法:可通过路由传参的方式   参考:https://blog.csdn.net/pleaseprintf/article/details/131345971......
  • vue-day33-vue 单文件组件
    1.indedx.html<!DOCTYPEhtml><html><head><metacharset="UTF-8"/><title>练习一下单文件组件的语法</title></head><body><divid="root"></div><scripttype="t......
  • vue 使用vue-json-viewer 展示 JSON 格式数据
    为什么需要Vue-json-viewer在前端开发中,我们经常需要处理JSON数据。然而,JSON数据一般是以字符串的形式来传递,难以直观地查看、理解和调试,这阻碍了我们开发工作的进程。Vue-json-viewer组件正是为了解决这个问题而生。安装vue-json-viewer插件npminstallvue-json-viewer--sa......
  • vue 使用剪切板功能功能vue-clipboard2
    vue-clipboard2介绍vue-clipboard2是前端能够调用剪切板的一个插件。具体的描述官网上也有具体的说明,npm地址https://www.npmjs.com/package/vue-clipboard2github地址https://github.com/Inndy/vue-clipboard21.安装npminstall--savevue-clipboard22.在main.js中引入i......
  • vue使用echarts图表,有一个组件:v-charts
    介绍在使用echarts生成图表时,经常需要做繁琐的数据类型转化、修改复杂的配置项,v-charts的出现正是为了解决这个痛点。基于Vue2.0和echarts封装的v-charts图表组件,只需要统一提供一种对前后端都友好的数据格式设置简单的配置项,便可轻松生成常见的图表。是vue的charts的......
  • vuex中的state更新了,但是页面不更新
    问题:我有两个页面,都是用了同一个变量,我在A页面更改了变量,然后我切到B页面,B页面上的变量没有刷新 原因:是因为我这两个页面的路由在配置的时候都是用了keep-alive,所以导致在两个keep-alive之间的页面切换时,页面不会主动刷新,只会展示第一次加载的内容router.config.js 解......