1.说明
小程序因为所谓的安全问题,用户必须使用<button open-type="getUserInfo"></button>才能弹出授权弹窗。所以需要弄一个授权按钮到页面上。考虑到用户体验,授权按钮放哪里是一个问题,有小伙伴提出将授权按钮做成全屏透明的,给它一个比较高的层级,这样,无论用户第一次进入小程序之后点击任何地方都会弹出授权弹窗,感觉这个提议有点意思,我也来试着弄一遍。
2.授权按钮全屏透明实现步骤
(1)在首页index.wxml中给定一个授权按钮,给它一个class用来设置全屏、透明、高层级样式,给它一个wx:if用来设置它的隐藏和显示,再给它一个bindgetuserinfo来监听用户是否同意授权。
index.wxml:
<!--授权按钮-->
<button wx:if="{
{flagUseBtn}}" class="userInfoBtn" style=height:{
{userInfoBtnHeight}}px;"
open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo"></button>
(2)在js中声明一个flagUseBtn初始值为false控制授权按钮的隐藏和显示,再声明一个userInfoBtnHeight初始值为0