微信小程序授权之getuserInfo

小程序调用授权开发接口,getuserInfo时,外层必须是一个button按钮,且不能加点击事件

<button
      open-type="getUserInfo"
      withCredentials="true"
      class="mc btn-auth"
      @getuserinfo="getUserInfo"
    >
      授权登录
    </button>
getUserInfo() {
    let userInfo: any = {};
    let _this = this;
    uni.login({
      provider: "weixin",
      success: (res: any) => {
        let code = res.code;
        uni.getUserInfo({
          provider: "weixin",
          lang: "zh_CN",
          success: function(res: any) {
            let userInfo = {
              avatarUrl: res.userInfo.avatarUrl,
              nickName: res.userInfo.nickName,
              iv: res.iv,
              encryptedData: res.encryptedData,
            };
          },
          fail: function(err: any) {
            _this.Foundation.confirm(
              "您点击了拒绝授权,将无法正常使用发布功能,点击确定重新获取授权。",
              "温馨提示",
              () => {
                uni.openSetting({
                  success: (res: any) => {
                    _this.getUserInfo();
                  },
                });
              }
            );
          },
        });
      },
    });
  }

判断是否授过权

handleJudgeAuth() {
    let _this = this;
    uni.getSetting({
      success: (res: any) => {
        if (res.authSetting["scope.userInfo"]) {
          _this.getUserInfo();
        } else {
          _this.isShowAuth =true;
        }
      },
    });
  }

手机号授权

 <button
        class="getPhone-btn"
        open-type="getPhoneNumber"
        @getphonenumber="getPhoneNumber"
        v-show="loginBtn"
      ></button>
/*获取手机加密信息  */
  getPhoneNumber(e: any) {
    let { errMsg, encryptedData, iv } = e.detail;
    let _this = this;
    if (errMsg == "getPhoneNumber:ok") {
      _this.phoneInfo = {
        encryptedData: encryptedData,
        iv: iv,
      };
      this.saveUser();
    } else {
      _this.Foundation.alert("手机号授权失败!");
    }
  }
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值