E企盈营销工具技术服务商 热线:4006-838-530

微信小程序之小程序授权登录

E企盈直播平台营销卖货系统

微信小程序授权登录微信小程序更改了getUserInfo的接口,无法自动去弹出授权,所以在获取授权信息的时候需要根据button去进行获取;在首页文件中,编写一个获取授权的页面,在刚进入页面时,判断用户是否授权。如果没有授权则显示出授权的页面,否则直接显示页面;// 判断是否需要显示授权按钮<view wx:if=”{{isHide}}”>    <view wx:if=”{{canIUse}}” >        <view class=’header’>            <image src=’/images/wx_login.png’></image>        </view>        <view class=’content’>            <view>申请获取以下权限</view>            <text>获得你的公开信息(昵称,头像等)</text>        </view>        <button class=’bottom’ type=’primary’ open-type=”getUserInfo” lang=”zh_CN” bindgetuserinfo=”bindGetUserInfo”>            授权登录        </button>    </view>    <view wx:else>请升级微信版本</view></view><view wx:else> 这里是正文内容 </view>css://授权框的样式;.header {    margin: 90rpx 0 90rpx 50rpx;    border-bottom: 1px solid #ccc;    text-align: center;    width: 650rpx;    height: 300rpx;    line-height: 450rpx;}.header image {    width: 200rpx;    height: 200rpx;}.content {    margin-left: 50rpx;    margin-bottom: 90rpx;}.content text {    display: block;    color: #9d9d9d;    margin-top: 40rpx;}.bottom {    border-radius: 80rpx;    margin: 70rpx 50rpx;    font-size: 35rpx;}js代码page({isHide: false,userInfo: {}}) onLoad: function () {    var that = this;    // 查看是否授权    wx.getSetting({      success: function (res) {        if (res.authSetting[‘scope.userInfo’]) {          wx.getUserInfo({            success: function (res) {              // 用户已经授权过,不需要显示授权页面,所以不需要改变 isHide 的值              // 获取昵称和头像,**这里看需求因为这里需要将昵称和头像传送给后台所以需要;**              var name = res.userInfo.nickName;              var photo = res.userInfo.avatarUrl;              //调取登录按钮              that.userLogin(name,photo);            }          });        } else {          // 用户没有授权          // 改变 isHide 的值,显示授权页面          that.setData({            isHide: true          });        }      }    });  },  // 用户登录方法userLogin:function(name,photo){  var That = this;  wx.login({    success: res => {      wx.request({        url: api.login,        data:{code:res.code,name:name,photo:photo},        success: res => {          // 获取oppenid 和sessicon_key 用户ID          var wechat = {            openid:res.data.openid,            session_key: res.data.session_key,            uid:res.data.uid          }          //返回openid session_key  本地缓存,方便其他页面使用          wx.setStorage({              key: ‘wechat’,            data: wechat          })        }      });    }  });},// 用户授权方法  bindGetUserInfo: function (e) {    if (e.detail.userInfo) {      //用户按了允许授权按钮      var that = this;      var name = e.detail.userInfo.nickName;//获取姓名      var photo = e.detail.userInfo.avatarUrl;//获取头像      //授权成功后执行登录方法;      this.userLogin(name,photo);      //授权成功后,通过改变 isHide 的值,让实现页面显示出来,把授权页面隐藏起来      that.setData({        isHide: false,        userInfo:e.detail,      });    } else {      //用户按了拒绝按钮      wx.showModal({        title: ‘警告’,        content: ‘您点击了拒绝授权,将无法进入小程序,请授权之后再进入!!!’,        showCancel: false,        confirmText: ‘返回授权’,        success: function (res) {          // 用户没有授权成功,不需要改变 isHide 的值          if (res.confirm) {            console.log(‘用户点击了“返回授权”’);          }        }      });    }  },

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 微信小程序之小程序授权登录
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏