微信小程序—userInfoReadyCallback使用

  1. 一、userInfoReadyCallback详解
    1. 1、userInfoReadyCallback可以总结以下三点:
    2. 2、app.js中userInfoReadyCallback定义:
    3. 3、page.onload:

一、userInfoReadyCallback详解

1、userInfoReadyCallback可以总结以下三点:

userInfoReadyCallback这个方法是在page.onload中定义的。

如果userInfoReadyCallback方法被定义了,则说明page.onload比当前方法运行的早(page已经完成初始化),app的globalData还没有数据,通过此回调可以及时的刷新数据

如果userInfoReadyCallback方法没有被定义,则说明page.onload比当前方法运行的晚(page还没有初始化),app的globalData是有值的,可以在page.onload中取globalData里面的值

2、app.js中userInfoReadyCallback定义:

wx.getUserInfo({
    success: res => {
        console.log('getUserInfo success:', res);

        // 可以将 res 发送给后台解码出 unionId
        this.globalData.userInfo = res.userInfo

        // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
        // 所以此处加入 callback 以防止这种情况
        if (this.userInfoReadyCallback) {
            this.userInfoReadyCallback(res)
        }
    }
}

3、page.onload:

if (app.globalData.userInfo){
    this.setData({
        userInfo: app.globalData.userInfo
    })
}

// 给app.js 定义一个方法。
app.userInfoReadyCallback = res =>{
    console.log('userInfoReadyCallback: ', res);
    console.log('获取用户信息成功');
    this.setData({
        userInfo: res
    })
};

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 848130454@qq.com

文章标题:微信小程序—userInfoReadyCallback使用

文章字数:272

本文作者:Spicy boy

发布时间:2020-08-15, 10:12:25

最后更新:2021-03-17, 15:01:04

原始链接:http://www.spicyboy.cn/2020/08/15/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E2%80%94userInfoReadyCallback%E4%BD%BF%E7%94%A8/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏