首页天道酬勤微信小程序如何异步代码,微信小程序onload

微信小程序如何异步代码,微信小程序onload

张世龙 05-06 01:39 108次浏览

在小程序中,通常在onLaunch上启动登录请求。 因为请求是异步的,所以在进入onLoad后再运行登录请求。 如果需要使用onLoad请求的数据,您会发现无法获取值。 以下是根据需要可以使用的解决方法。

回调函数///app.JSONlaunch((wx.login ) success:result=) wx.request ) URL:'test.PHP'/示例data3360 ) )的success 3360 RES={ this.global data.OpenID=RES.data.OpenID//回调if (this.log in callback (this.log in callback ) logincalllback () ris.log fail: err={//如果需要,回调也用于请求失败的地方page.js onload ({ constapp=getapp (if ) app.globaldata.openid ) } else {app.loginCallback=(data )={//do somback 使用{returnnewpromise}的reject () wx.login ) success : result (wx.request ) URL:'test.PHP'/示例data : { success : fail 3360 err={ reject (error (} } ) (}/page.js onload ) {const app=getApp ) ) app.initlog in } objece 监听app.jswatch(method ) {let obj= this.globalData//其中openidobject.defineproperty ) obj.globaldata///},get : function ((return this.global data ) ) }onLaunch ) ) wx.login ) success 3360 result=(wx.request ) )。 success 3360 RES={ this.global data.OpenID=RES.data.OpenID } } (/page.js onload ) { const app=getapp watch back () dosomething ) )使用getcurrentpages//app.JSON launch ) { wx.log in } { success 3360 result={ wx.request } { URL : ' ' success 3360 RES={ const current page=wx.getcurrentpages ([0]//触发当前页面的init方法currentpage.init(RES.data ) } ) app.jsonLaunch () wx.login ) success3360result=) wx.request ) URL:'test.PHP'/示例data success: res={//跳转到页面可以获取storage的数据wx.relaunch (URL : (/pages/n-index/n-index )、)。

小程序异步解决方案,小程序获取onload里的变量