Taro + H5 微信重定向登录地址 传递自己的参数

1.需求 

需要一款H5 能够携带邀请参数的程序 能够带着邀请参数 进行注册 或者绑定账号关系,但是有一个问题就是 微信重定向登录会导致这个参数丢失 登录成功以后 又需要保存用户信息内存 所以分为 新用户 和老用户 这个参数还有可能变化 

2.实现

 onLaunch(options) {
    console.log(options.query, "options.queryoptions.queryoptions.query");
    Taro.setStorageSync("registerCode", options.query.state);

    // const isIOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
    // if (isIOS) {
    //   window.history.pushState({}, "title", "#");
    // }
    locationService.getLocation();
  },
app.js 全局获取参数
 local = encodeURIComponent(local);

  //  获取 code 地址registerCode
  let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId.value}&redirect_uri=${local}&response_type=code&connect_redirect=1&scope=snsapi_userinfo&state=${registerCode ? registerCode : Taro.getStorageSync("registerCode")}#wechat_redirect`;

  window.location.href = url; 

state参数 其实就是自己自定义的函数 所以每次 都可以将参数取到存在内存中 然后每次直接从内存取出

3.总结 

我用的是Taro 框架 跟uni-app 有可能文件不一样 但是逻辑肯定是一样的 我在Taro 中实现的 在un-app 中肯定能同样实现

你可能感兴趣的:(微信,javascript,开发语言)