主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情! |
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作 |
0.简介
为了优化用户体验,微信小程序取消了进入小程序后立即出现的认证窗口。 用户必须主动单击按钮才能触发身份验证窗口。
现在,在练习过程中,出现了以下问题。
1. 不弹出验证窗口。 2. 如果用户允许,我想隐藏该按钮。 1、具体实现
在app.js中的onLaunch()函数中添加一段代码片段,用于检索用户的个人信息。 如果您允许我们这样做(例如,当您第二次打开小程序时),我们将在未经您许可的情况下自动收集您的个人信息。
wx.getSetting({ success: res => { if (res.authSetting['scope.userInfo']) { console.log("app: " + "用户已通过身份验证") // 已经通过身份验证,您可以直接调用getUserInfo获取头像昵称,不显示弹窗: wx.getUserInfo({ success: res => { // 发送res到后台获取unionId this. globalData.userInfo = res.userInfo 控制台可以解码 log( this.globalData.userInfo) this.globalData.hasUserInfo = true // getUserInfo是网络请求所以可能会在Page.onLoad之后返回 //因此,这里添加回调以防止出现此情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } ) }else { console.log("app: " + "用户暂时未通过身份验证" ) } } }})
在me.wxml中添加认证按钮(具体页面根据您的实际情况而定)。 这里的按钮组件应该采用以下格式:
效果如下。 您可以更改某些样式以适合每个人的口味
将以下变量和方法添加到 me.js。 这会迫使用户在未事先批准的情况下主动单击该按钮。
data: { userInfo: null, hasUserInfo: false},getUserInfo: function(e) { console.log("me: " + "用户点击批准")if(e.detail.userInfo){ this.setData({ userInfo: e.detail.userInfo, h asUserInfo: true }) app.data.userInfo = this.userInfo app.data.hasUserInfo = true }}2. 身份验证窗口无法弹出
这里应该小心
身份验证窗口仅在用户第一次身份验证时出现。 也就是说,它仅在开始时可见。 一度! !
微信小程序开发工具要求清除所有缓存。
3. 如果批准,则不会显示该按钮
由于用户已经批准了,这次(不是用户点击批准按钮时)app.js 会检索。用户的个人信息,但这个过程是异步的。
可以看到授权按钮的外观是根据{{!hasUserInfo}}的真实值决定的。 可以根据 app.js 是否检索信息来分配该值。
但是,即使用户认证了,app.js也可能太慢。 获取个人信息。 但是,批准按钮错误地认为 app.js 没有检索信息,因此呈现了批准按钮。
目前,我们希望app.js在确定用户已获得授权并获取信息后告诉我们授权按钮。
将以下代码片段添加到 me.js。
onLoad: function() { // 获取个人信息 if(app.globalData.userInfo){this.setdata ({UserInfo: App.globalData.userinfo, Hasuserinfo: True})} Else {// 如果 app.js 无法检索信息,则确定 app.js 中的异步操作是否返回信息 app.userinForeALLLLLLBAC k = res => { this.setData({ userInfo: app.globalData.userInfo, hasUserInfo: true }) } }}
为什么这里有 app.userInfoReadyCallback 函数 wx.getSetting 我注意到在 app.js 中有一个部分用于回调函数。 该函数用于解决异步问题。
推荐教程:“微信小程序”
下载微信应用
微信是一款支持发送语音消息、视频、照片和文字的移动应用. 通讯软件。 微信带来了全新的移动通信体验,您可以单独或群组聊天,还可以根据您的地理位置查找附近的人。 遇到麻烦的朋友,请快来保存您的下载体验吧!
下载
这几篇文章你可能也喜欢:
- 微信小程序wx.request请求数据错误(微信小程序请求错误)
- 为什么微信小程序无法加载?(微信小程序总是加载失败)
- 微信小程序开发初体验(微信小程序开发初体验如何写)
- 微信小程序常见开发问题概述(微信小程序常见开发问题有哪些?)
- 微信小程序自动弹出(微信小程序莫名其妙的弹出)如何解决?
本文由主机参考刊发,转载请注明:微信小程序调用微信认证窗口(微信小程序微信认证) https://zhujicankao.com/123809.html
评论前必须登录!
注册