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

这篇具有很好参考价值的文章主要介绍了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()
		}
	},

自定义左上角安检的返回文章来源地址https://www.toymoban.com/news/detail-767631.html

goBackFn(){
			this.androidReturn=false;
			this.goBack();
		},

到了这里,关于h5或uniapp或微信小程序,实现左上角返回到指定页面,侧滑左滑返回指定页面,安卓物理返回键返沪指定页面解决思路的思考的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序使用webview后点击左上角返回按钮一次性返回小程序

    当我们来到webview标签对应的网页地址的时候,在该页面内进行几次跳转后,发现点击小程序左上角返回按钮返回的是上一次跳转的内容,并没有达到我们返回小程序的需求,而是要一直点,然后才能返回小程序。 我的情况是webview标签放在一个单独的页面下宽高100%占比显示,

    2024年02月05日
    浏览(58)
  • 关于uni-app微信小程序监听顶部左上角的返回事件

    在项目上返回上一级的时候需要清空vuex里的数据,使用了onBackPress无效。 查看官方文档后才发现onBackPress对微信小程序无效。  然后我发现了另一个生命周期——onUnload 完美解决!!!

    2024年02月08日
    浏览(57)
  • 微信小程序左上角home图标的解决方法之一 层级混乱导致的home图标显示的问题 自定义左上角左侧图标的返回路径

    这个项目的编辑页在tabbar上 导致跳到tabbar得使用wx.switchTab 保存后返回原来的页面就出现了左上角的home图标 本来想通过自定义home图标的跳转路径来解决这个问题 没想到居然找不到相关内容 有清楚的朋友麻烦给我留个言不胜感激 那我写一下我的骚操作   这就是观察记录页面

    2024年02月11日
    浏览(58)
  • uniapp实现微信小程序/H5答题卡

    最近项目中使用到很多答题卡,实现了一个可以复用的答题卡组件。 项目使用 HbuilderX , uniapp,uview 进行开发。 代码中有些地方判断写的没必要,懒得改了,xdm看不惯自己改吧 hhhhhhh ^_^。 HTML代码: 微信小程序页面,如果要修改为H5,直接把view标签修改为div, 并把 :style=\\\"

    2024年02月03日
    浏览(50)
  • uniapp实现微信小程序内嵌h5页面的相互跳转

    前期准备3个页面,小程序内2个,h5一个。 小程序内:操作页pageA,展示容纳h5的展示页PageWebview.vue。 h5:h5页面pageB,并且有可以访问的线上url。 【微信小程序pageA-内嵌h5页面pageB】 1.1 pageA实现点击跳转,将pageB的访问地址url拼接,并进入展示页PageWebview.vue 1.2 PageWebview.vue页面用

    2024年02月12日
    浏览(69)
  • uniapp实现H5、APP、微信小程序三端文件下载

    这里我使用了uniapp官方api uni.downloadFile 和 uni.openDocument APP使用了uniapp官方api uni.downloadFile 和 uni.saveImageToPhotosAlbum(OBJECT) 还有 uni.openDocument H5的方法比较简单可以直接使用window.open方法下载。即: 如果你的浏览器支持预览,就会自动打开预览文件,然后自己手动下载文件,不支

    2024年02月16日
    浏览(73)
  • 采用uniapp实现的银行卡卡片, 支持H5和微信小程序

    采用uniapp-vue3实现的银行卡卡片 支持H5、微信小程序(其他小程序未测试过,可自行尝试) 可用于参考学习 可到插件市场下载尝试: https://ext.dcloud.net.cn/plugin?id=16736 使用示例

    2024年02月22日
    浏览(77)
  • 解决小程序字体在最左上角问题

    问题如下 原因: 出现这种现象的原因是项目默认开启了Skyline渲染模式,因为Skyline渲染模式不支持原生导航栏,所以在json文件中设置的导航栏失效,文字就会向上移动,如果想要使用原生的导航栏,可以将app.json文件中的下图所展示的两个内容去掉,保存后重新编译即可。

    2024年01月22日
    浏览(74)
  • uniapp实现h5、app、微信小程序三端pdf文件下载和预览

    以下代码兼容三端,app,h5,微信小程序,经过个人测试 手机端有两种方法,使用renderjs或者uniapp的api 两者的区别 使用renderjs的写法,会提示用户是否下载文件,下载完成后用户需要手动点击下载的文件,才会打开文件 使用uniapp的api则可以直接下载并直接预览,不需要用户操

    2024年02月11日
    浏览(60)
  • 小程序监听左上角返回事件后处理一些逻辑

    有得时候小程序在点击左上角返回的时候是需要改变一些只或者属性的,但是有监听不到用户点击了返回按钮,除非是自定义一个返回按钮,哎,我找到了一个方法,不多说直接用代码演示 这是A页面的wxml代码 A页面的js代码 接下来就在B页面的onUnload函数里监听点击箭头事件

    2024年02月11日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包