uniappAPP登录页⾯设计
场景:
app登录界面在没有登录的时候,⼀打开app 就要显⽰登录页⾯,如果登录过则显⽰第⼀个tab页⾯
由于底部的tab最多只能有五个,并且五个都已经占⽤,没有多余的tab分给登录页⾯,
如果将登录放在⼆级页⾯,那么,ios下屏幕上的左滑动,会返回到上⼀层,安卓的物理返回键,也会返回到上⼀层,⽆法做到登录页⾯视觉上是第⼀个页⾯
解决⽅案有两种
1、将登录做成⼀个组件页⾯,放在pages 配置的⾸页上,⾸页onload 时就判断登录态,根据条件显⽰是否为登录组件
2、将登录页⾯放在⼆级页⾯,并且pages.json ⾥⾯配置该页⾯不能左滑动"popGesture": "none" ,同时,在页⾯的 onBackPress 事件中onBackPress(e){
if(e.from=='backbutton'){
/
/安卓下物理返回键⽆效
return true;
}
}
就可以做到登录页⾯视觉上为第⼀级页⾯,在⾸页中判断登录态,然后reLauch到登录页⾯,登录后调⽤switchTab切换到⾸页即可
注意:
退出登录的时候,如果只是清掉登录态,将页⾯跳转(navigateTo)到登录页⾯,或者是switchTab到放有登录组件的⾸页,在没有重启APP的情况下,所有的tab页⾯是不会被销毁的,在此情况下登录,所有放在页⾯作⽤域下的变量都是不会更新的。
使⽤ reLaunch到登录页⾯可以避免这个问题
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论