0
点赞
收藏
分享

微信扫一扫

vue中路由的resolve新窗口打开

boomwu 2022-05-06 阅读 148

路由跳转的几种方式

1、router-link(不带参)

<router-link :to="{name:'home'}"> 
<router-link :to="{path:'/home'}">

2、router-link(带参)

params

<router-link :to="{name:'user', params: {name: '张三'}}">

// 路由配置 path: "/home/:name"

// 获取参数 this.$route.params.name

query

<router-link :to="{name:'user', query: {name: '张三'}}">

// 以路径拼接的方式传参

// 获取参数 this.$route.query.name

3、push

不传参

this.$router.push('/home')

params传参

this.$router.push({name:'user',params: {name: '张三'}})  // 只能用 name

// 获取参数 this.$route.query.name

query传参


this.$router.push({path:'/user',query: {name: '张三'}})

// 获取参数 this.$route.params.name

4、this.$router.replace()  (用法同上,push)

5、go

this.$router.go(n)

// 向前或者向后跳转n个页面,n可为正整数或负整数

6、resolve

当遇到需要在点击事件或函数中实现打开新页面,新窗口打开需求时

const { href } = this.$router.resolve({
     path: '/user',
          query: {
            name: '张三'
          }
   }

window.open(href, '_blank');    

// 获取参数 this.$route.query.name
举报

相关推荐

0 条评论