vue路由传参并跳转页面

在vue项目中参数的传递可以使用本地缓存或者Vuex,那么vue能不能像小程序一样路由传参呢,显然是可以的而且非常简单

方式一:query传参

    //传参
    go(){
        that.$router.push({
            path:'/order',//跳转路径
            name: 'Order',//跳转路径的name值,不写跳转后页面取不到参数
            // 参数
            query: { 
                name: 'name', 
                dataObj: {}
            }
        })
    }, 

//跳转后页面取参
        mounted(){
            // 路由参数
            let mm = this.$route.query//query包含传递的所有参数
        },

But 浏览器地址栏中显示如下,所以如果参数保密,该方式慎用啦

 

方式二:parms传参

        //传参
        go(){
            this.$router.push({
                path:'/order',//跳转路径
                name: 'Order',//跳转路径的name值,不写跳转后页面取不到参数
                // 参数
                params: { 
                    name: 'name', 
                    dataObj: {}
                }
            })
        },


//跳转后页面取参
        mounted(){
            // 路由参数
            let mm = this.$route.params//parms包含传递的所有参数
        },

是的就是这么相似,但是传递的参数就不会显示在地址栏了,但是有没有注意到跳转路径的name值必传是不是也不够优雅,不传行不行?见方式三

 

方式三:不传name

不传name需要对路由配置文件的路径做些改动

       //传参
       go(){
            let num = '33'
            this.$router.push({
                path:'/order' + '/' + num,
            })
        },

       //路由配置文件
       {
            path: '/order/:id',//路由携带的参数
            // path: '/order',
            name: 'Order',
            component: Order
        },

        //跳转后页面取参
        mounted(){
            // 路由参数
            let mm = this.$route.params//parms包含传递的所有参数
        },

 

转载于:https://www.cnblogs.com/weichen913/p/9851567.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值