最近做了一个小程序, 使用wx.scanCode这个Api扫描微信小程序生成的二维码,发现在微信开发者工具和真机使用的参数不一样,这需要在微信里打开调试,查看从二维码获取参数到的参数,下面分别是微信开发者工具和真机的代码:
wx.scanCode({
onlyFromCamera:true,
success:(res)=>{
var path = res.path
//微信开发者工具 在开发者工具里出现乱码需要decodeURIComponent转义,真机不需要,可以直接使用
console.log("res.path",res.path); //pages/me/me?scene=table_id%3D8%26shop_id%3D1
path= path.split('?'); //分割字符串 path[0]等于pages/me/me,path[1]等于scene=table_id%3D8%26shop_id%3D1
var scene = path[1];
var reg = new RegExp("scene=","g");
var scene = path.replace(reg,"");
//手机和开放者工具不一样的地方就在这几步了
var scene = decodeURIComponent(scene); //在手机上省略这一步 开发者工具需要
scene = scene.split("&");
var list = {};
for(var i = 0; i<scene.length; i++){
var b = scene[i].split("=");
list[b[0]] = b[1];
}
console.log(list);
}
})