解决办法:那个部分或者说哪个方法需要这个code值,就直接写在这个方法里面,例如下方(注:如果页面上只有一个地方需要,我们可以写在onLoad中或者单独需要这个code值的方法中。)
微信小程序启动进行自动登录问题,偶尔提示code过期,是由于onLaunch启动进行自动登录时,code提交到服务端,还未返回结果,页面page上执行onload请求部分需要登录的接口--由于此时还未返回登录信息,--认为当前未登录--跳转到登录页,登录界面服务端返回自动登录用户信息,此时登录界面用户点击登录按钮,提示code已被使用,无法在进行登录 *** 作,原理上就是onLaunch未执行完就执行了page--onload导致出现问题,解决办法,控制执行完onLaunch再去执行page--onload,有以下3中方法:
解决办法
定义回调函数, onload里获取不到东西就一直获取,不执行下一步 *** 作,直到获取到app.js的数据才继续执行。若login返回为空,则给app.js注册一个loginSuccessCallback回调,这个回调方法的执行时机,就是app.js中的异步请求完毕
把 app.js 中的 onLaunch 中方法拿到 index.js 文件中,按照自己的逻辑写
使用promise
1.
2.
3.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)