登录微信公众平台=>开发=>开发设置=>扫普通链接二维码打开小程序=>添加
然后到https://cli.im/url/或者用画布canvas生成一个动态的二维码保存下来
生成路径为你txt文件服务器的url加参数
但是会有个问题,有时候直接扫码进入的时候无法通过onLoad的options属性获取到参数。
比如:https://shopp***********.com/admin/b?id=3&commId=45
但是我这边一直获取不到id和commId的对象。后来打印options发现是
{q: "https%3A%2F%2Fshoppi********.com%2Fadmin%2Fb%3Fid%3D3%26commId%3D45", scancode_time: "1586855379"}
options.q会获取到url,但是此时的url已经被转url码,需要转译回来并且获取到后面的参数
let url = unescape(decodeURI(o.q))
var obj = {};
//如果字符串里面存在?
if (url.indexOf("?") != -1) {
//从url的索引1开始提取字符串
var str = url.substring(url.indexOf("?")+1);
//如果存在&符号,则再以&符号进行分割
var arr = str.split("&");
//遍历数组
for (var i = 0; i < arr.length; i++) {
// obj对象的属性名 = 属性值,unescape为解码字符串
obj[arr[i].split("=")[0]] = unescape(arr[i].split("=")[1]);
}
}
console.log(obj);
就可以通过obj.id直接获取到对象,就OK了