uni-app小程序、app返回上级页面并向上级页面传参(1.$on/$emit,2. 页面栈getCurrentPages())--问题记录

e m i t , emit, emit,on 方法

onBackPress(e) { //监听返回事件api、与methods同级
	uni.$emit("handClick",{//点击返回的这个页面触发一个事件,使用uni.$emit(“handClick”,{})
		rightText: this.rightText, //传递的参数
		checkedBoxArray: this.checkedBoxArray
	});
	uni.switchTab({ //返回的页面的路径,此方式返回的是tabBar页面,返回其他子级页面请使用uni.navigateBack(OBJECT)
		url: '/pages/like/index'
	})
	return true //true表示禁止默认返回
},
onShow() { //通过onshow来自触发
	uni.$on( 'handClick', res => { //通过uni.$on('handClick',function())触发
		console.log(res)//res传递的数据
		this.searchObj = res
		uni.$off('handClick');//解除监听
	})
},

页面栈方法

  • 二级页面调用getCurrentPages()方法
			bindClick(e) {
				let pages = getCurrentPages(); // 获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
				let nowPage = pages[pages.length - 1]; //当前页页面实例
				let prevPage = pages[pages.length - 2]; //上一页页面实例
				prevPage.$vm.regionBindClick(e);// 給上一頁綁定方法otherFun,傳參object
				uni.navigateBack({
					delta:1 // 可以不傳delta值,默認為1
				})
			},
  • 一级页面
			regionBindClick(e) {
				this.selectRegion = e.item;
			},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值