微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现


Posted in Javascript onAugust 19, 2020

这个接口只能获得一些非敏感信息,例如用户昵称,用户头像,经过用户授权允许获取的情况下即可获得用户信息,至于openid这些,需要调取wx.login来获取。

index.wxml

<!-- 当已经授权的时候 -->
<view wx:if="{{result == 'ok'}}" class="result">
 <view class="headimg">
  <image src="{{avatarUrl}}"></image>
 </view>
 <view class="nickname">{{nickName}}</view>
</view>
<!-- 当未授权的时候 -->
<view wx:else class="result">
<view>未授权</view>
<button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>
</view>

index.js

Page({
 data: {
  canIUse: wx.canIUse('button.open-type.getUserInfo')
 },
 onLoad: function() {
  var that = this;
  // 查看是否授权
  wx.getSetting({
   success (res){
    if (res.authSetting['scope.userInfo']) {
     // 已经授权,可以直接调用 getUserInfo 获取头像昵称
     wx.getUserInfo({
      success: function(res) {
       console.log(res.userInfo)
       that.setData({
        result:'ok',// 结果
        nickName:res.userInfo.nickName,// 微信昵称
        avatarUrl:res.userInfo.avatarUrl,// 微信头像
       })
      }
     })
    }else{
     // 未授权,结果返回null
     that.setData({
      result:'null',// 结果
     })
    }
   }
  })
 },
 // 请求API授权,获得用户头像和昵称
 bindGetUserInfo (e) {
  console.log(e.detail.userInfo.nickName)
  var that = this;
  that.setData({
   result:'ok',// 结果
   nickName:e.detail.userInfo.nickName,// 微信昵称
   avatarUrl:e.detail.userInfo.avatarUrl,// 微信头像
  })
 }
})

index.wxss

button{
 margin:30px auto 0;
}
.result{
 width:200px;
 margin:20px auto;
 text-align: center;
}
.result .headimg{
 width:200px;
 height: 200px;
 border-radius: 100px;
 margin-bottom: 20px;
}
.result .headimg image{
 width:200px;
 height: 200px;
 border-radius: 100px;
}

微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现

到此这篇关于微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现的文章就介绍到这了,更多相关小程序wx.getUserInfo授权内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Mootools 1.2教程 输入过滤第二部分(字符串)
Sep 15 Javascript
Javascript在IE或Firefox下获取鼠标位置的代码
Dec 18 Javascript
Javascript 类与静态类的实现
Apr 01 Javascript
JS禁用浏览器退格键实现思路及代码
Oct 29 Javascript
Js参数值中含有单引号或双引号问题的解决方法
Nov 06 Javascript
jquery处理页面弹出层查询数据等待操作实例
Mar 25 Javascript
js+css绘制颜色动态变化的圈中圈效果
Jan 27 Javascript
jQuery实现一个简单的轮播图
Feb 19 Javascript
jquery.flot.js简单绘制折线图用法示例
Mar 13 Javascript
js设置鼠标悬停改变背景色实现详解
Jun 26 Javascript
ES6 async、await的基本使用方法示例
Jun 06 Javascript
Openlayers实现点闪烁扩散效果
Sep 24 Javascript
微信小程序通过websocket实时语音识别的实现代码
Aug 19 #Javascript
JS实现炫酷雪花飘落效果
Aug 19 #Javascript
javascript实现雪花飘落效果
Aug 19 #Javascript
js实现直播点击飘心效果
Aug 19 #Javascript
js实现鼠标点击飘爱心效果
Aug 19 #Javascript
Vue环境搭建+VSCode+Win10的详细教程
Aug 19 #Javascript
Vue实现导航栏菜单
Aug 19 #Javascript
You might like
phpmyadmin里面导入sql语句格式的大量数据的方法
2010/06/05 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
2014/05/12 PHP
使用Thinkphp框架开发移动端接口
2015/08/05 PHP
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
2016/07/09 PHP
PHP后台微信支付和支付宝支付开发
2017/04/28 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
PHP设计模式之模板方法模式实例浅析
2018/12/20 PHP
使用正则替换变量
2007/05/05 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
详解JavaScript中常用的函数类型
2015/11/18 Javascript
适用于javascript开发者的Processing.js入门教程
2016/02/24 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
webpack 插件html-webpack-plugin的具体使用
2018/04/09 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
JavaScript设计模式之策略模式实现原理详解
2020/05/29 Javascript
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
Python编程中的文件操作攻略
2015/10/16 Python
python解析html提取数据,并生成word文档实例解析
2018/01/22 Python
python写入已存在的excel数据实例
2018/05/03 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
2019/11/22 Python
Python新手学习raise用法
2020/06/03 Python
Python爬取某平台短视频的方法
2021/02/08 Python
如何用canvas实现在线签名的示例代码
2018/07/10 HTML / CSS
美国单身专业人士在线约会网站:EliteSingles
2019/03/19 全球购物
领导视察欢迎词
2014/01/15 职场文书
幼儿园保教管理制度
2014/02/03 职场文书
启动仪式策划方案
2014/06/14 职场文书
大学计划书范文800字
2014/08/14 职场文书
党员批评与自我批评(5篇)
2014/09/23 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
干部作风建设年活动剖析材料
2014/10/23 职场文书
2014年营销工作总结
2014/11/22 职场文书
详解Django的MVT设计模式
2021/04/29 Python
Python中字符串对象语法分享
2022/02/24 Python
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏