query和params区别
query类似 get, 跳转之后页面 url后面会拼接参数,类似?id=1, 非重要性的可以这样传, 密码之类还是用params刷新页面id还在params类似 post, 跳转之后页面 url后面不会拼接参数 , 但是刷新页面id 会消失
1.router-link
不带参数
<router
-link
:to
="{name:'home'}">
<router
-link
:to
="{path:'/home'}">
带参数
<router
-link
:to
="{name:'home', params: {id:1}}">
<router
-link
:to
="{name:'home', query: {id:1}}">
2.this.$router.push() (函数里面调用)
不带参数
this.$router
.push('/home')
this.$router
.push({name
:'home'})
this.$router
.push({path
:'/home'})
query传参
this.$router
.push({name
:'home',query
: {id
:'1'}})
this.$router
.push({path
:'/home',query
: {id
:'1'}})
params传参
this.$router
.push({name
:'home',params
: {id
:'1'}})
3.this.$router.replace() (用法同push)
和push的区别:
this.$router.push 跳转到指定url路径,并向history栈中添加一个记录,点击后退会返回到上一个页面this.$router.replace 跳转到指定url路径,但是history栈中不会有记录,点击返回会跳转到上上个页面 (就是直接替换了当前页面)
4. this.$router.go(n)
向前或者向后跳转n个页面,n可为正整数或负整数