微信扫码进入小程序传参

1,后台直接拼接参数

在小程序的首页onLoad方法里面获取参数:

		async onLoad(opt) {
			if(opt.q){
                //参数为:调用小程序链接?query=xxxx
				let q = decodeURIComponent(opt.q);
				let _i1 = q.split('?')[1];
				let _i2 = _i1.split('=')[1];
				//只传一个参数的情况下,_i2[0]为参数名,_i2[1]为参数值
			}
		}

2,使用场景值进行传参

onload生命周期函数中获取,

参数格式为:

scene=a%3Dxxxxx%26b%3Dxxxxx
scene: 这个参数是取页面链接的地方
%3D:这个是被微信加密后的等号,等号前面的是你自己定义的key,等号后面的是value
%26:这个符号代表的是微信加密号后的 & 符号

    async onLoad(opt){
      if(opt.scene){
        var scene = opt.scene;
        var reg = new RegExp('scene=', "g");
        scene = scene.replace(reg, "");
        scene = decodeURIComponent(scene);
        var arrPara = scene.split("&");
        var _data = {}
        for (var i in arrPara) {
            var item = arrPara[i].split("="); 
            _data[item[0]] = item[1]
        }
        //得到的arrPara为参数对象
    },

在开发者工具中选择自定义条件写上参数,进入场景选择扫描二维码,进行模拟调试

猜你喜欢

转载自blog.csdn.net/weixin_36185028/article/details/105140571