vue 路由跳转带参 方式query ,params

a.vue向b.vue传值
 
a.vue
this.$router.push({
    path: '/payType',
    query: {
        putUpList: this.putUpList,
        name:'111'
    },
    params:{
        cartList: this.cartList,
        totalMoney: this.totalMoney
    }
});
 
b.vue
mounted:function(){
    console.log(this.$route.params)
    console.log(this.$route.query)
}
 
坑来了
query可以拿到,params拿不到
需要在注册路由的地方给路由加上name参数
const router = new VueRouter({
    routes:[{
        ...
    },{
        path:'/payType',
        name:'inputComp',
        component: payType
    }]
})
 
a.vue跳转路由的地方同样加上name参数,b.vue就可以拿到params了
this.$router.push({
    path: '/payType',
    name: 'inputComp',
    query: {
        putUpList: this.putUpList,
        name:'111'
    },
    params:{//一定要设置name,才可以传params
        cartList: this.cartList,
        totalMoney:this.totalMoney
    }
});

转载:https://www.cnblogs.com/matd/p/11573819.html

posted @ 2019-12-14 16:50  ___mouM  阅读(1352)  评论(0编辑  收藏  举报