思路:
1.点击 按钮授权 绑定点击事件

<button open-type="getUserInfo" bindgetuserinfo='getUserInfo'>获取头像昵称 </button>

2.事件获取e 获取授权信息 console.log(e.detail)//userInfo登录人微信信息

3.进入页面 获取之前有没有授权过 ---在app.js获取信息 设置成全局
wx.getSetting({}) success--->res.authSetting['scope.userInfo'] 判断授权
wx.getUserInfo({}) success-->userInfo 用户信息
4.about.js 判断全局授权信息

实现效果:

第一步:授权界面

about.wxml代码

<!-- 登录授权 -->
<view  wx:if='{{isShow}}'><view wx:if='{{canIuse}}'><button open-type="getUserInfo" bindgetuserinfo='getUserInfo'>获取头像昵称 </button></view><view wx:else>请升级微信版本</view>
</view><!-- 内容显示--头像 --><view class='userinfo' wx:else><view class="avatarUrl"> <image src='{{userInfo.avatarUrl}}'></image></view><text class='nickName'>{{userInfo.nickName}}</text></view>

第二步:获取头像事件 bindgetuserinfo

about.js代码 后面演示---最下面

第三步:再次进入页面后 获取是否授权过

app.js

app.js代码

App({onLaunch:function(){var that=this;//进入页面获取是否授权----------------------------wx.getSetting({success(res) {//authSetting用户授权结果console.log(res.authSetting);//scope.userInfoif (res.authSetting['scope.userInfo']) {//授权过console.log('授权过信息');// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框wx.getUserInfo({success: function (res) {console.log(res.userInfo);//存储到本地that.globalData.userInfo = res.userInfo;// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回// 所以此处加入 callback 以防止这种情况if (that.userInfoReadyCallback) {that.userInfoReadyCallback(res)}}})} else {console.log('没有授权')}}})wx.showModal({title: '是否授权当前的用户信息',content: '',})},globalData: {cityInfo: '',userInfo:null,}
})

第四步:进入我的登录界面 获取用户头像信息

代码:

var app=getApp();
Page({data: {isShow:true,//显示//判断小程序的API,回调,参数,组件等是否在当前版本可用canIuse: wx.canIUse('button.open-type.getUserInfo'),userInfo:{},//微信信息},onLoad: function (options) {//进入页面---判断全局是否有数据var  that=this;console.log(app.globalData.userInfo)//进入页面后---获取本地存储是否有数据授权----------if(app.globalData.userInfo){this.setData({isShow:false,userInfo:app.globalData.userInfo})} else if (this.data.canIuse) {// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回// 所以此处加入 callback 以防止这种情况app.userInfoReadyCallback = res => {that.setData({userInfo: res.userInfo,isShow: false,})}}},//-----点击授权--------------------------getUserInfo:function(e){console.log(e.detail)//userInfo登录人微信信息//存储全局变量-----------------app.globalData.userInfo = e.detail.userInfo;//存全局的账号信息this.setData({userInfo:e.detail.userInfo,isShow:false})},
})

view 判断显示 微信_微信小程序开发用户授权登录(上)相关推荐

  1. 微信小程序云开发用户身份登录_微信小程序开发用户授权登录(下)

    如果开发者拥有多个移动应用.网站应用.和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用.网站应用和公众帐号(包括小程序),用户的 Un ...

  2. 微信小程序开发 - 用户授权登陆

    本篇将帮助读者实现基于 微信开发者工具 & C#环境 下的用户在小程序上的授权登陆. 准备: 微信开发者工具下载地址:https://developers.weixin.qq.com/mini ...

  3. 微信小程序:用户授权登录

    点击"微信一键登录"按钮,触发login_weixi事件 先查看是否勾选了底部按钮,勾选了就获取用户信息,每次请求成功都会弹出授权窗口,把用户信息缓存到storage里面,方便下次 ...

  4. 微信点餐小程序开发_分享微信点餐小程序可以实现哪些功能

    线下餐饮实体店都开始摸索发展网上订餐服务.最多人选择的是入驻外卖平台,但抽成高,推广还要另买流量等问题,也让不少商家入不敷出.在这种情况下,建立自己的微信订餐小程序,做自己的私域流量是另一种捷径.那么 ...

  5. Java后台微信点餐小程序开发最新版笔记,Springboot+Mysql+Freemarker+Bootstrap+微信小程序实现扫码点餐小程序,包含语音提示,微信消息推送,网页管理后台

    由于之前的Java后台微信点餐小程序有些知识点过时了,所以今天重新出一版,把里面过时的知识点更新下 前五章是部署笔记,后面是知识点的详细讲解,大家可以先看部署笔记,部署起来后,再跟着详细知识学习. 第 ...

  6. 微信废品回收小程序开发上门回收废品小程序开发

    废品回收小程序系统如何做_微信小程序助力废品回收 微信废品回收小程序开发 微信废品回收小程序开发

  7. 微信小程序之用户授权

    用户授权 今天我们来讲解微信小程序之用户授权,首先这个我们得分2种情况:1.弹出授权框用户点击允许 2.弹出授权框用户点击拒绝 第一种情况: 很好处理,这里就不多做介绍,按正常的走就可以了 第二种情况 ...

  8. 微信答题红包小程序开发玩法解析

     微信答题红包小程序是最新上线的,小伙伴们可以给自己的好友进行发红包,发红包的方式只需要小伙伴们使用微信就能发送,不知道怎么发红包的小伙伴们,就让小编给大家详细的讲讲吧. 微信答题红包玩法介绍: 1. ...

  9. 猜成语背单词俄罗斯方块聊天微信流量主小程序开发

    猜成语背单词俄罗斯方块聊天微信流量主小程序开发 流量主,原生微信云开发 单词播放使用微信插件 你是否想永久一款小游戏?高昂的报价,复杂的审核(小游戏代码相似率要求很高)有没有让你望而却步.现在,它来了 ...

  10. 微信共享停车场小程序开发设计方案

    随着城市的发展,人们的生活水平提高,车辆的增多,在有限的城市空间中,停车难成为了人们经常遇到的问题,附近找不到停车位置的情况时有发生,为了更好的解决这一问题,可以通过共享停车场小程序快捷的找到停车位置 ...

最新文章

  1. java中countinue,.random(用于产生一个随机数)入门可看
  2. android canves rotate 详解
  3. 刚出道的黑客搞瘫美国!他们一边搞钱一边捐款给慈善组织,还说俄国人不打俄国人...
  4. 用扫描的方式实现Rosenfeld and Pfaltz提出的距离变换!
  5. CTFshow 命令执行 web55
  6. 锐捷云课堂助力海南农垦中学 根治计算机教室“老病根”
  7. Xshell-密钥登录
  8. python爬取app中的音频_Python爬取抖音APP,只需要十行代码
  9. java.util接口_函数接口– Java 8中java.util.function包中的函数接口
  10. Ray.tune可视化调整超参数Tensorflow 2.0
  11. 现在能不能升级鸿蒙,能不能升级鸿蒙系统?
  12. python第六课——判断结构
  13. 微信网页开发那些破事儿
  14. 重庆大学计算机学院工程博士,重庆大学-计算机学院2018年工程博士招生工作实施细则...
  15. Android 硬件加速
  16. 价值工程杂志价值工程杂志社价值工程编辑部2022年第23期目录
  17. 电脑连不上网络,报红叉,网络适配器报黄色警告,错误代码56,解决办法
  18. html仿今日头条数据列表
  19. 掌门教育:品质为本,全面打造高质量教学核心驱动力
  20. 云存储相关技术及术语的探讨

热门文章

  1. 部署项目到weblogic时提示文件被锁,导致报错
  2. 社区智慧+机器智能=奇虎经验的知识机器人
  3. .NET基础示例系列之十五:操作Excel
  4. [!] No `Podfile' found in the project directory.
  5. html经过菜单变色移开恢复,h5学习笔记:transition菜单过渡变色
  6. linux定时器与线程,Linux下的多线程定时器实现
  7. Linux下nohup、crontab的使用
  8. JMeter接口测试入门
  9. Layer下拉框监听
  10. PHP打印Excel表格并下载