h5或uniapp或微信小程序,实现左上角返回到指定页面,侧滑左滑返回指定页面,安卓物理返回键返沪指定页面解决思路的思考

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

h5或uniapp或微信小程序实现左上角返回到指定页面侧滑左滑返回指定页面安卓物理返回键返沪指定页面

uniapp开发app,(非微信小程序)

自定义的左上角返回按钮

<i class="iconfont icon-zuojiantou" style="font-size: 24px;" @click="goBack()"></i>

方法

goBack(){
			
				let pages = getCurrentPages();
				//函数用于获取当前页面栈的实例以数组形式按栈的顺序给出第一个元素为首页最后一个元素为当前页面
				var num=pages.length
				//当前页面栈总数
				var backnum
				//需要返回的页数
				for(var i =0;i<num;i++){
					//循环找到指定页面路由所在的页数
					if(pages[i].route=='pages/xxx/xxx'){
					console.log(pages[i].route,'pages[i].route')
					//'pages/xxx/xxxx'你需要返回的页面路由
						backnum=num-i-1
						//计算返回的层数总数-指定页面页数-1
					}		
				}
				console.log(backnum,'backnum')
				uni.navigateBack({
					delta:backnum
						//返回的页面数如果 delta 大于现有页面数则返回到首页。
				})
			
		},

安卓物理返回键监听该方法与生命周期函数同级也可以尝试放在methods里面。

onBackPress(options){//这里是监听安卓物理返回键或者侧滑左滑返回方式
		if(options.from=='navigateBack'){
			return false
		}else if(options.from=='backbutton'){//物理键默认返回上一级我们在这里进行了处理
			this.goBack()//走我们自己的方法
			return true
		}else if('xxxx){//也可以是其他方式
		
		}
	}

uniapp写的微信小程序

思路因为uniapp写的微信小程序用onBackPress监听不到不支持监听安卓物理返回所以换了个想法默认认为是安卓物理键或者侧滑左滑返回如果是我自己的按钮就走goBackFn的方法把androidReturn设置为true离开页面就不会执行beforeDestroy里面的方法如果是物理按钮返回那么离开页面会触发生命周期函数beforeDestroy所以在销毁页面前判断是否为物理按键返回是则调用goBack

自己写的左上角返回按钮
<i class="iconfont icon-zuojiantou" style="font-size: 24px;" @click="goBackFn()"></i>
data里面定义参数

androidReturn:true,//默认安卓物理键返回

定义方法

goBack(){
	let pages = getCurrentPages();
				//函数用于获取当前页面栈的实例以数组形式按栈的顺序给出第一个元素为首页最后一个元素为当前页面
				var num=pages.length
				//当前页面栈总数
				var backnum
				//需要返回的页数
				for(var i =0;i<num;i++){
					//循环找到指定页面路由所在的页数
					if(pages[i].route=='pages/xxx/xxx'){
					console.log(pages[i].route,'pages[i].route')
						backnum=num-i-1
						//计算返回的层数总数-指定页面页数-1
					}		
				}
				console.log(backnum,'backnum')
				uni.navigateBack({
					delta:backnum
						//返回的页面数如果 delta 大于现有页面数则返回到首页。
				})
}

生命周期钩子函数写代码可以实现微信小程序自带的左上角返回和安卓物理键侧滑左滑返回

//uniapp内置了vue所以可以用vue的生命周期
beforeDestroy() {
		if(this.androidReturn){console.log('物理键返回')
			this.goBack()
		}
	},

自定义左上角安检的返回

goBackFn(){
			this.androidReturn=false;
			this.goBack();
		},
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

“h5或uniapp或微信小程序,实现左上角返回到指定页面,侧滑左滑返回指定页面,安卓物理返回键返沪指定页面解决思路的思考” 的相关文章

ThinkPHP中的事务怎么使用 - 编程语言

今天小编给大家分享一下ThinkPHP中的事务怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。 一、事务的概念事务是一...

Pro Android学习笔记(一零三):Alarm Manager(1):基础小例子

作者@恺风Wei。Android利用告警管理器可是实现时间触发,这些事件可以在一个特定的时间或者以一定的时间间隔发生。首先学习一个最为基础的告警处理。小例子小例子的UI如下。通过菜单,点击Alarm One,将在15秒后发送一个告警,在Activity的TextView和LogCat中都给出log...

策略(stragety)模式

策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 设计原则:封装变化,针对接口编程 http://dl.iteye.com/upload/attachment/501077/d93bc9bb-6f5b-3...

ubuntu10.10,qt4.7,boost1.45

首先总结一下:安装从网上找了两篇文章: Qt:http://glendong.blogbus.com/logs/86484035.html boost:http://blog.csdn.net/singno116/archive/2010/11/28/604...

浅谈Dubbo的异步调用

目录 Dubbo消费端实现 Dubbo调用的实现——DubboInvoker  Dubbo异步调用实现——AsyncToSyncInvoker 如何使用异步调用...

c语言之移位运算

移位运算 左移 逻辑左移和算数左移的效果是一样的高位移出低位补0. 对于一个位长位W的数来说左移K位。通常来讲K<W) 高k位移出低k位补0. 把下面这个w位的位向量左移K位。 [...