react & vue & angularvuevue

vue路由传参梳理

2022-01-28  本文已影响0人  香蕉不拿呢
前言

vue路由传参有两种类型,queryparams,这篇文章梳理一下。

一、query
1 传参
1.1 声明式
<router-link :to="{ path:"/userInfo"},query:{ id:id }"></router-link>
// 或者
<router-link :to="{ name:"userInfo"},query:{ id:id }"></router-link>
1.2 编程式
data(){
    return {
        id:"banana"
    }
},
methods:{
    clickFunction(){
        this.$router.push({
            path:"/userInfo",
            query:{
                id:this.id
            }
        })
        // 或者
        this.$router.push({
            name:"userInfo",
            query:{
                id:this.id
            }
        })
    }
}
2 取值
created(){
    this.$route.query.id
}
二、params
1 传参
1.1 声明式
<router-link :to="{ name:"userInfo", params:{ id:id }}"></router-link>
1.2 编程式
data(){
    return {
        id:"banana"
    }
},
methods:{
    clickFunction(){
        this.$router.push({
            name:"userInfo",
            params:{
                id:this.id
            }
        })
    }
}
2 取值
created(){
    this.$route.params.id
}
三、区别

params想要实现刷新页面不影响传参,需要在路由里修改路径
冒号+字段::id的格式

var routes = [
    {
        name:"userInfo",
        path:"/userInfo/:id",
    
    }
]
上一篇 下一篇

猜你喜欢

热点阅读