小程序
小游戏
企业微信
微信支付
扫描小程序码分享
使用getUserInfo获取的用户昵称保存到本地缓存,首次使用在新页面无法获取到数据
用户授权登录
新页面
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
只有第一次会出现这个问题,用户第二次打开的时候就可以获取到了
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
你第二次打开的时候是获取第一次缓存的数据,,,那是因为程序是异步加载,你可以看控制台,先加载的是page中的东西,后加载的是app.js,所以在app.js中对数据处理需要用别的方式,使用同步缓存也会出现这个问题.
我使用的是
Promise的方式进行处理就没有问题了
没有在app.js中,两段代码都是在page中,一共两个页面,每次都是先打开第一个页面,获取用户信息并保存到本地缓存,在第二个页面获取缓存
那就把data中直接赋值拿到第二个页面onLoad中做下处理,给data赋值,看能否拿到
已经听从你的建议修改为在onLond中获取缓存再赋值到页面了,只是不知道为什么会出现这个问题
现在正常了吗?我记得小程序是有加载顺序的,好像是先onLoad,然后onReady.一般从数据库获取数据基本上都是在onLoad中做处理然后赋值给data中
emmm....应该先加载onLoad里面的内容吧,获取到userInfo然后赋值给data. 我没有这么写过
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
只有第一次会出现这个问题,用户第二次打开的时候就可以获取到了
你第二次打开的时候是获取第一次缓存的数据,,,那是因为程序是异步加载,你可以看控制台,先加载的是page中的东西,后加载的是app.js,所以在app.js中对数据处理需要用别的方式,使用同步缓存也会出现这个问题.
我使用的是
Promise的方式进行处理就没有问题了
没有在app.js中,两段代码都是在page中,一共两个页面,每次都是先打开第一个页面,获取用户信息并保存到本地缓存,在第二个页面获取缓存
那就把data中直接赋值拿到第二个页面onLoad中做下处理,给data赋值,看能否拿到
已经听从你的建议修改为在onLond中获取缓存再赋值到页面了,只是不知道为什么会出现这个问题
现在正常了吗?我记得小程序是有加载顺序的,好像是先onLoad,然后onReady.一般从数据库获取数据基本上都是在onLoad中做处理然后赋值给data中
emmm....应该先加载onLoad里面的内容吧,获取到userInfo然后赋值给data. 我没有这么写过