看了很多帖子,包括官方文档给出的说明,但都看不到一个简明的回答或是一个完整的demo。
问题就是,我的逻辑是要获取到用户信息保存到数据库,按文档说明的话 wx.getUserInfo可以在用户已授权的情况下静默获取到用户的信息,这个我应该没理解错吧?所以我在小程序首页onload函数里都作此判断,当登录态过期后通过wx.login+wx.request将用户信息发到后台更新数据库内该用户的记录。
但如何处理获取新用户的信息?按这个意思是无法用wx.getUserInfo获取到新用户信息的,是要用button让用户点击后授权对吧?就是这个
<button open-type="getUserInfo" bindgetuserinfo="onGotUserInfo">登录</button>
怎么获取逻辑怎么写我看懂了,问题是大家都没说一下这个按钮放在哪里?是进入小程序后独自放一张页面上面放一个这样的授权按钮吗?(可是官方好像不允许这样子影响用户体验)还是让用户点击页面上的按钮时自动弹出?(这个怎么实现)要是能让新用户点击授权的按钮实现后,以后就不再需要这个按钮了吧?(还是有点晕)
有没有大佬实现了或是过审了的讲一下呗~感谢!!!
1、我是专门的page放button授权;
2、在某个page里onShow里判断,最后navigateTo这个专门的page去授权,获取成功后存在globalData和storage里以及后台;
3、app.js里判断是否userInfo更新的了,再去更新后台数据。
可以多尝试一下,把登录那段代码放到你页面随便什么地方,然后去点一下看看效果。
判断是否授权可以弹出提示用户是否进行授权的弹窗,若已授权则不需要弹出,若有帮助可以点个赞↓↓