微信小程序 扫描二维码不能直接获取到参数跳转到对应页面,返回的是一个链接,需要解析链接
//扫描二维码方法
getScan: function () {
wx.scanCode({
success: (res) => {
console.log(res);
if (res.result){
let qrUrl = decodeURIComponent(res.result);
console.log(this.getQueryString(qrUrl, 'id'));
wx.navigateTo({
url: '/pages/pay/pay?goodsid=' + this.getQueryString(qrUrl, 'id') + '&&code=' + this.getQueryString(qrUrl, 'code')
})
}else{
wx.showToast({
title: '请重新扫描!',
})
return false;
}
},fail:(res)=>{
wx.showToast({
title: '失败,请重试!',
})
}
})
},
//解析链接方法
getQueryString:function (url, name) {
var reg = new RegExp('(^|&|/?)' + name + '=([^&|/?]*)(&|/?|$)', 'i');
var r = url.substr(1).match(reg);
if (r != null) {
// console.log("r = " + r)
// console.log("r[2] = " + r[2])
return r[2];
}
return null;
}