(以下qr是uqrcode的实例)
昨天在使用uqrcode进行二维码生成的时候,出现了诡异的事情发生了
当我自信满满的拿着做好的二维码让测试去扫描,结果扫描不起,这就非常尴尬了
回来查看了好几次总结了如下原因:
1.查看二维码是否被遮挡
当我使用uqrcode生成的时候 canvas的长宽 < uqrcode的size 就导致了二维码扫描失败2.在微信后台配置普通二维码规则时候,测试链接url所带的参数和你代码里面的uqrcode.data里面的参数要一致
3.在写生成二维码代码的时候,qr.make的位置需要注意,因为本人的大意,将qr.size写在了qr.make之后,导致生成的二维码大小无法改变
4.微信后台当你的二维码规则配置好了之后,并且点击了发布(假设选择线上版),这时用户扫码看到的是正式版代码,如果此时你的正式版没有更新,会出问题哟
5.当然以上所有的问题都解决了的话,就可以进行扫码了,此时利用开发者工具的-快速二维码编译就就可以看到打印出来的参数,此时的参数是链接地址的需要处理一下
以下是我所用到的代码
export function ffff (url) {
let theRequest = {};
if(url.indexOf("#") != -1){
const str=url.split("#")[1];
const strs=str.split("&");
for (let i = 0; i < strs.length; i++) {
theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);
}
}else if(url.indexOf("?") != -1){
const str=url.split("?")[1];
const strs=str.split("&");
for (let i = 0; i < strs.length; i++) {
theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);
}
}
return theRequest;
}
经过以上操作就可以得到你想要的参数了