Taro-授权登录

冷不防 2021-08-30 18:59 1213阅读 0赞

授权登录

首先小程序在获取用户信息前应先检查微信是否授权登录,这里需要先获取用户的当前设置——Taro.getSetting

  1. // 使用方法一
  2. import Taro from '@tarojs/taro'
  3. Taro.getSetting({
  4. success (res) { }
  5. })
  6. // 或者
  7. Taro.getSetting().then(res => { })
  8. // 使用方法二
  9. import Taro, { getSetting } from '@tarojs/taro'
  10. // 同上,去掉前面的Taro

调用此方法后判断用户是否授权:

  1. import { hideTabBar } from '@tarojs/taro'
  2. getSetting().then(res => {
  3. let authSetting = res.authSetting
  4. // 如果没有授权则跳转至授权页面或者唤起授权弹框
  5. if (!authSetting['scope.userInfo']) {
  6. // 这里要唤起自定义的授权弹框,因为现在微信上只能通过按钮来触发授权,如果是在 tabBar 的页面,需要先隐藏掉 tabBar
  7. hideTabBar()
  8. // 然后唤起弹框
  9. this.setState({
  10. authShow: true
  11. })
  12. }
  13. })

那我们先自定义一个授权弹框在首页:

  1. getUserInfo = () => {
  2. // ...
  3. }
  4. <AtModal isOpened>
  5. <AtModalHeader>授权登录</AtModalHeader>
  6. <AtModalContent>
  7. 您还尚未授权,请授权后登录
  8. </AtModalContent>
  9. <AtModalAction>
  10. <Button onClick={ this.handleCancel}>取消</Button>
  11. <Button
  12. open-type="getUserInfo"
  13. onGetUserInfo={ this.getUserInfo}
  14. >确定</Button>
  15. </AtModalAction>
  16. </AtModal>

然后如果没有授权就显示这个弹框,然后点击确定就可以授权了。授权后就可以进行下一步操作,比如用户账号绑定,手机号码绑定等等。

公众号:Coder 杂谈,欢迎关注
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,1213人围观)

还没有评论,来说两句吧...

相关阅读

    相关 mongodb授权登录

    mongodb版本为3.2(目前最新),演示的是linux下的mongodb授权认证 第一次登录不启动授权(mongo默认不启动)    ./mongod --d

    相关 登录授权接口文档

    登录授权接口文档 一、流程图 ![这里写图片描述][70] 从图中,我们知道作为授权方服务端主要提供以下几个接口:authorize、accessToken、re

    相关 Taro-授权登录

    授权登录 首先小程序在获取用户信息前应先检查微信是否授权登录,这里需要先获取用户的当前设置——`Taro.getSetting` // 使用方法一 im