微信小程序> 【小程序】使用button的opentype=getUserInfo引导用户进行授权

【小程序】使用button的opentype=getUserInfo引导用户进行授权

浏览量:2269 时间: 来源:巴拉拉L

一、 前言

小程序官方文档,上面说明

wx.getUserInfo(OBJECT) 注意:此接口有调整,使用该接口将不再出现授权弹窗,请使用

button open-type="getUserInfo"/button

引导用户主动进行授权操作
当用户未授权过,调用该接口将直接报错 当用户授权过,可以使用该接口获取用户信息

如上文,之前用户未授权过时,调用wx.getUserInfo会调出授权框;但现在在用户未授权过时调用该接口,会直接走fail方法。

所以我们要使用上述button来请求用户授权。

二、主体

index页面作为展示授权按钮的页面,并且在app.json中将index作为首页。在判断用户授权之后跳转到其他页面。

index.wxml

button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo"授权登录/buttonview wx:else请升级微信版本/view

index.js

Page({  data: { //判断小程序的API,回调,参数,组件等是否在当前版本可用。    canIUse: wx.canIUse('button.open-type.getUserInfo')  },  onLoad: function() {    // 查看是否授权    wx.getSetting({      success: function(res){        if (res.authSetting['scope.userInfo']) {          wx.getUserInfo({            success: function(res) {              console.log(res.userInfo)              //用户已经授权过            }          })        }      }    })  },  bindGetUserInfo: function(e) {    console.log(e.detail.userInfo)    if (e.detail.userInfo){      //用户按了允许授权按钮    } else {      //用户按了拒绝按钮    }  }})

*tips:授权之后要跳转到的页面若为  tabBar中的页面 ,则不可以用wx.navigateTo和wx.redirecTo,而应该用wx.switchTab或wx.reLaunch。

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎