小程序异步问题
发布于 5 年前 作者 qiangtang 12659 次浏览 来自 问答

我在app.js通过wx.login方法获取到code之后,调用后台的方法转换成sessionKey,然后缓存起来,在其他页面还没从缓存中获取到数据就先调用了接口

3 回复

onLoad: function () {

    wx.request({

 

        url: app.globalData.domain,

        method: ‘POST’,

        header: {

            ‘content-type’: ‘application/x-www-form-urlencoded’

        },

        data: {

            sessionKey: wx.getStorageSync(sessionKey),

 

        },

        success: function (result) {

            console.log(result);

        }

    })

 

}

怎么改?比如这样…

增加一个callback,具体函数内容在其他页面初始化:

// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回

                              // 所以此处加入 callback 以防止这种情况

                              if (this.userInfoReadyCallback) {

                                this.userInfoReadyCallback(res)

                              }

用一个事件回调

回到顶部