vue-router跳转方式的区别解析

在Vue中,router-link称为声明式路由,:to绑定为跳转的目标地址,一种是通过name,另一种是path,这篇文章主要介绍了vue-router跳转方式的区别,需要的朋友可以参考下

一、router-link(声明式路由,在页面中调用)

在Vue中,router-link称为声明式路由,:to绑定为跳转的目标地址,一种是通过name,另一种是path。
1.1 路由不带参数

 路由name方式跳转首页路由path方式跳转首页

1.2 路由带参数跳转
路由参数的传递主要有两种方式一种是params,另一种是query,主要区别:

1. params传参的参数不会显示在跳转的URL中,query传参的参数会显示在URL中。

2. params所传的参数通过this.$route.params.参数;获取,query所传的参数通过this.$route.query.参数 获取

3. 因为params所传递的参数不显示在URl中,所以在路由跳转时推荐params方式进行传参

4. 都不能传对象和数组引用类型数据,只能传字符串类型数据

路由name,params方式跳转首页路由name,query方式跳转首页路由path,params方式跳转首页路由path,query方式跳转首页

二、this.$router.push() (在函数里面调用)

2.1不带参数跳转

this.$router.push({ path: '/home'}); this.$router.push({ name: 'home'}); 

2.2带参数跳转

 路由name方式跳转 goTo() { this.$router.push({ name: 'home', params: { a: '1', b: '2' } });//推荐用params传参方式 this.$router.push({ name: 'home', query: { a: '1', b: '2' } }); } 

三、this.$router.resolve()打开新窗口跳转

3.1通过path形式跳转

goTo() { let routeData = this.$router.resolve({ path: '/home', }); window.open(routeData.href, '_blank'); } 

3.2通过name形式跳转

goTo() { let routeData = this.$router.resolve({ name: 'home', }); window.open(routeData.href, '_blank'); } 

到此这篇关于vue-router跳转方式的区别的文章就介绍到这了,更多相关vue-router跳转内容请搜索0133技术站以前的文章或继续浏览下面的相关文章希望大家以后多多支持0133技术站!

以上就是vue-router跳转方式的区别解析的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Vue.js 教程