关于微信小程序Demo中的userInfoReadyCallback

这里用一个例子说明

实验目的:
1、app中获取用户信息
2、页面中显示
这演示的是已经授权,可以直接调用getUserInfo,这样简洁代码,突出重点

----------------------错误示范--------------------------

应用【app.js】

onLaunch: function () {
    wx.getUserInfo({
      success: res => {
        //【1】获取用户信息保存
        this.globalData.userInfo = res.userInfo;
      }
    })
}

页面【index.js】

onLoad: function () {
  //【2】显示用户信息
  this.setData({
    userInfo: app.globalData.userInfo,
    hasUserInfo: true
  });
},

这的问题在第【2】步,获取不到信息,因为网络有延迟,【1】还没有执行,【2】就先执行了。

----------------------修改后--------------------------
应用【app.js】

onLaunch: function () {
    wx.getUserInfo({
      success: res => {
        //【1】获取用户信息保存
        this.globalData.userInfo = res.userInfo
        //等待函数定义并执行
        if (this.userInfoReadyCallback001) {
          this.userInfoReadyCallback001(res);
        }
      }
    })
}

页面【index.js】

onLoad: function () {
  //【2】显示用户信息
  //定义函数
  app.userInfoReadyCallback001 = res => {
    this.setData({
      userInfo: res.userInfo,
      hasUserInfo: true
    });
  }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值