微信小程序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 相关文章推荐
Jquery方式获取iframe页面中的 Dom元素
May 07 Javascript
用js闭包的方法实现多点标注冒泡示例
May 29 Javascript
jQuery元素属性操作实例(设置、获取及删除元素属性)
Sep 08 Javascript
微信小程序 页面传参实例详解
Nov 16 Javascript
Vue 仿百度搜索功能实现代码
Feb 16 Javascript
JavaScript创建对象的七种方式全面总结
Aug 21 Javascript
jQuery实现简单的计时器功能实例分析
Aug 29 jQuery
AngularJs返回前一页面时刷新一次前面页面的方法
Oct 09 Javascript
vue cli3.0结合echarts3.0与地图的使用方法示例
Mar 26 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
Sep 06 Javascript
JavaScript遍历数组的方法代码实例
Jan 14 Javascript
js实现随机点名
Jan 19 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
PHP编程中八种常见的文件操作方式
2006/11/19 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
Mac下关于PHP环境和扩展的安装详解
2019/10/17 PHP
js常用函数 不错
2006/09/08 Javascript
JavaScript类和继承 this属性使用说明
2010/09/03 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
2011/04/12 Javascript
raphael.js绘制中国地图 地图绘制方法
2014/02/12 Javascript
div失去焦点事件实现思路
2014/04/22 Javascript
用js制作淘宝放大镜效果
2020/10/28 Javascript
javascript计算渐变颜色的实例
2017/09/22 Javascript
jQuery实现切换隐藏与显示同时切换图标功能
2017/10/29 jQuery
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
js实现九宫格布局效果
2020/05/28 Javascript
vue实现信息管理系统
2020/05/30 Javascript
深入理解 ES6中的 Reflect用法
2020/07/18 Javascript
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
[02:21]2018完美盛典章节片——初心
2018/12/17 DOTA
python 远程统计文件代码分享
2015/05/14 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
2016/01/16 Python
python做量化投资系列之比特币初始配置
2018/01/23 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
python多个模块py文件的数据共享实例
2019/01/11 Python
Python进程间通信 multiProcessing Queue队列实现详解
2019/09/23 Python
Python获取时间戳代码实例
2019/09/24 Python
python基于plotly实现画饼状图代码实例
2019/12/16 Python
如何基于Python实现自动扫雷
2020/01/06 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
Python发送手机动态验证码代码实例
2020/02/28 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
JD Sports比利时官网:英国领先的运动鞋和运动服饰零售商
2018/10/10 全球购物
个人优缺点自我评价
2014/01/27 职场文书
2014年高三班主任工作总结
2014/12/05 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
观看《筑梦中国》纪录片心得体会
2016/01/18 职场文书