vue动态路由跳转和获取参数

文章类型:Vue

发布者:admin

发布时间:2023-04-08

一:跳转方式

1:router-link

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

2:this.$router.push(),跳转到指定URL,向history栈添加一个新的记录,点击后退会返回至上一个页面

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

3:this.$router.replace(),跳转到指定URL,替换history栈中最后一个记录,点击后退会返回至上上一个页面

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

4:this.$router.go(n),类似window.history.go(n),向前或向后跳转n个页面,n可正(先后跳转)可负(向前跳转)

this.$router.go(1)

二:获取参数

1:param方式

A:形式:/router/:id,在path后面跟上对应的值

B:方法:

<router-link :to="{ name: 'users', params: { uname: james }}">按钮</router-link>

this.$router.push({name:'users',params:{uname:wade}})

this.$router.push('/user/' + wade)

C:参数:通过 $route.params.userid 获取传递的值

2:query方式

A:形式:/router,对象中使用query的key作为传递方式,带?参数

B:方法:


// 方法1:
<router-link :to="{ name: 'users', query: { uname: james }}">按钮</router-link>

// 方法2:
this.$router.push({ name: 'users', query:{ uname:james }})

// 方法3:
<router-link :to="{ path: '/user', query: { uname:james }}">按钮</router-link>

// 方法4:
this.$router.push({ path: '/user', query:{ uname:james }})

// 方法5:
this.$router.push('/user?uname=' + jsmes)

C:参数:通过$route.query 获取传递的值