//index.js var app = getApp() Page({ data: { userInfo:{},//用户公开信息 hasUserInfo:false,//是否获取了用户公开信息 canIUse:wx.canIUse('button.open-type.getUserInfo'),//是否支持使用getUserInfo按钮 openID:'',//用户身份ID信息 isLoading:false //openimage:'', //openname:'' }, onLoad: function (options) { wx.getSetting({//调用接口获取用户的当前设置 success:res=>{//调用成功时的回调函数 if(res.authSetting['scope.userInfo']){//如果已经授权,可以直接调用getUserInfo获取头像昵称,不会弹框 //增加 //获取id,但还没有显示在页面上 var that = this; wx.showLoading({//显示加载提示框 title: '获取openID...', }) wx.cloud.callFunction({//调用云函数 name: 'login',//函数名称 data: {},//函数参数 complete: res => {//调用完成时的回调函数 wx.hideLoading();//隐藏加载提示框 this.setData({ isLoading:true }) }, success: res => {//调用成功时的回调函数 console.log('[云函数][login] user openid:', res.result.openid) that.setData({//设置页面绑定数据 openID: '[云函数]获取openID成功:' + res.result.openid, //openimage:res.userInfo.avatarUrl, //openname:res.userInfo.nickname }) }, fail: err => {//调用失败时的回调函数 console.error('[云函数][login] 调用失败', err) that.setData({//设置页面绑定数据 openID: '[云函数]获取openID失败:' + err }) } } )}//以上获取id //增加 wx.getUserInfo({//调用接口获取用户公开信息 success:res=>{//调用成功时的回调函数 this.setData({//设置页面绑定数据 userInfo:res.userInfo, hasUserInfo:true }) } }) } }) }, //获取id,但还没有显示在页面上 /*var that = this; wx.showLoading({//显示加载提示框 title: '获取openID...', }) wx.cloud.callFunction({//调用云函数 name: 'login',//函数名称 data: {},//函数参数 complete: res => {//调用完成时的回调函数 wx.hideLoading()//隐藏加载提示框 }, success: res => {//调用成功时的回调函数 console.log('[云函数][login] user openid:', res.result.openid) that.setData({//设置页面绑定数据 openID: '[云函数]获取openID成功:' + res.result.openid, //openimage:res.userInfo.avatarUrl, //openname:res.userInfo.nickname }) }, fail: err => {//调用失败时的回调函数 console.error('[云函数][login] 调用失败', err) that.setData({//设置页面绑定数据 openID: '[云函数]获取openID失败:' + err }) } }) },*///以上获取id getUserInfo:function(e){//定义getUserInfo按钮的单击事件函数 console.log(e) if(!e.detail.userInfo){//如果返回参数中包含userInfo数据,则已经获取了用户公开信息 this.setData({//设置页面绑定数据 userInfo:e.detail.userInfo, hasUserInfo:true, }) }else{//否则就显示模态对话框,显示模态对话框,提示授权失败信息 wx.showModal({ title:e.detail.errMsg, content:'小程序需要用户授权获取公开信息才可以继续', }) } }, bindViewTap(){ wx.switchTab({ url:'../dub/dub' }) }, bindViewTap1(){ wx.showModal({ content:'小程序需要登录才可以进行配音哦!', }) }, })