业务场景:
在H5端,X项目,入口页面A, 从X项目A页面->B页面->C页面,C页面通过location.href,前往Y项目的N页面,在N页面history.go(-1),或者history.back(),回退到C页面。
问题:
点击C页面标题栏的返回按钮,会直接返回到A页面,越过了B页面。即使在C页面的onBackPress进行处理也不成。
原因分析:
uni-app 标题栏的返回按钮 的监听 代码:
_back: function () {
1 === getCurrentPages().length ? uni.reLaunch({url: "/"}) : uni.navigateBack({from: "backButton"})
}
这里是通过etCurrentPages().length先进行了判断,得到的length==1,直接给uni.reLaunch了。
解决办法:
个人认为把这个判断挪到uni.navigateBack方法中去判断,可以解决以上问题,而且也可以保持onBackPress的业务逻辑统一。
0 个回复