uni中的导航跳转

利用navigator进行跳转

跳转至普通页面

<navigator url="../detail/detail?id=80&age=19">跳转至详情页,有返回</navigator> 

跳转至tabbar页面

<navigator url="../message/message" open-type="switchTab">跳转至信息页</navigator>
<navigator url="../detail/detail" open-type="redirect">跳转至详情页,无返回, 上一个页面已经销毁了</navigator>

利用编程式导航进行跳转

//编程式导航,
<button @click="goDetail">跳转至详情页</button>
<button @click="goMessage">跳转至信息页(tabbar)</button>
		
<button type="primary" @click="redrectDetail">跳转到详情页并关闭当前页面</button>

利用navigateTo进行导航跳转

  • 保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面。

通过switchTab跳转到tabbar页面

  • 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。

利用redirectTo进行跳转

  • 关闭当前页面,跳转到应用内的某个页面。
methods:{
			goDetail(){
				uni.navigateTo({
					url:"../detail/detail"
				})
			},
			goMessage(){
				uni.switchTab({//卸载所有非tabbar页面
					url:"../message/message"
				})
			},
			redrectDetail(){
				uni.redirectTo({
					url:"../detail/detail"
				})
			}
		}

通过onUnload测试当前组件确实卸载

  • 和methods平级
onUnload() {
			console.log("导航页面卸载了")
		},

导航跳转参数传递

  • 在导航进行跳转到下一个页面的同时,可以给下一个页面传递相应的参数,接收参数的页面可以通过onLoad生命周期进行接收
  • 传递参数界面(navigator.vue)
<navigator url="../detail/detail?id=80&age=19">跳转至详情页,有返回</navigator> 
  • 参数接收界面(跳转后的界面 detail.vue)
<script>
	export default {
		onLoad(options) {
			console.log('页面加载了',options)
		},
	}
</script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值