Hbuilder打包APP时返回键问题的实际解决方案

     最近做一个angularJS的商城项目,使用Hbuilder打包app时遇到了返回键直接退出的问题,网上的解决办法机制为判断是否有window.history(或者webview记录)历史记录,有就返回上一级,没有就退出程序,这只能满足一般需要,在我的实际项目中完全不能解决问题。

     首先我抛出我用网上常规方法时出现的bug。

     第一个bug,当我在app中点击退出登陆时,app会返回授权登录页并清除storage本地缓存。此时按返回键应该退出app,但因为是从退出登录页面跳转到当前页面,所以window.history会有记录,此时点击返回按键实际会跳向退出登录的页面,造成未登录却依然可以进入app的bug。

     第二个bug,进入app时,授权登录页会根据storage判断是否为登录状态,如果为登录状态就直接放行,让用户进入app进行使用,用网上一般解决办法时,在app首页点击返回键会向授权登录页跳转,但此时用户为登录状态,所以授权登录页的判断机制会让页面重新跳转进入app首页,造成在app首页按退出键无效的假象。

     解决办法:

     先上代码

        //获取当前页面的信息
	 $rootScope.$on('$stateChangeSuccess', function (ev, to, toParams, from, fromParams) {  
         $rootScope.previousState = from; //from为前一个页面的路由信息:url,cache,views,name  
         $rootScope.previousParams &
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值