当前位置:实例文章 » HTML/CSS实例» [文章]【最全】uni-app 页面跳转及参数传递

【最全】uni-app 页面跳转及参数传递

发布人:shili8 发布时间:2024-12-10 10:24 阅读次数:0

**uni-app 页面跳转及参数传递**

在uni-app开发中,页面跳转是非常常见的需求。然而,在实际开发过程中,我们经常会遇到一些问题,如如何传递参数、如何处理返回值等。在本文中,我们将详细介绍uni-app页面跳转及参数传递的相关知识。

### 一、页面跳转在uni-app中,页面跳转可以通过`uni.navigateTo()`或`uni.redirectTo()`方法实现。其中,`uni.navigateTo()`用于跳转到一个新的页面,而`uni.redirectTo()`则用于跳转到一个新的页面并关闭当前页面。

####1. uni.navigateTo()

javascript// 跳转到一个新的页面uni.navigateTo({
 url: '/pages/index'
})


####2. uni.redirectTo()

javascript// 跳转到一个新的页面并关闭当前页面uni.redirectTo({
 url: '/pages/index'
})


### 二、参数传递在uni-app中,参数传递可以通过`uni.navigateTo()`或`uni.redirectTo()`方法的`query`选项实现。其中,`query`选项用于传递一个对象作为参数。

####1. uni.navigateTo()

javascript// 跳转到一个新的页面并传递参数uni.navigateTo({
 url: '/pages/index',
 query: {
 id:123,
 name: 'John'
 }
})


####2. uni.redirectTo()

javascript// 跳转到一个新的页面并传递参数,并关闭当前页面uni.redirectTo({
 url: '/pages/index',
 query: {
 id:123,
 name: 'John'
 }
})


### 三、获取参数在uni-app中,获取参数可以通过`$root.$options.query`或`this.$options.query`实现。

####1. $root.$options.query
javascript// 获取传递的参数console.log($root.$options.query.id) // 输出:123console.log($root.$options.query.name) // 输出: John


####2. this.$options.query
javascript// 获取传递的参数console.log(this.$options.query.id) // 输出:123console.log(this.$options.query.name) // 输出: John


### 四、返回值处理在uni-app中,返回值处理可以通过`uni.navigateBack()`方法实现。其中,`uni.navigateBack()`用于返回到上一个页面。

####1. uni.navigateBack()

javascript// 返回到上一个页面uni.navigateBack({
 delta:1 // 返回到上一个页面})


### 五、示例代码以下是完整的示例代码:

javascript// pages/index.jsPage({
 data: {
 id: '',
 name: ''
 },
 onLoad(options) {
 this.setData({
 id: options.id,
 name: options.name })
 }
})


javascript// pages/detail.jsPage({
 data: {
 id: '',
 name: ''
 },
 onShow() {
 console.log(this.$options.query.id)
 console.log(this.$options.query.name)
 }
})


javascript// pages/index.jsPage({
 data: {
 id: '',
 name: ''
 },
 onTap() {
 uni.navigateTo({
 url: '/pages/detail',
 query: {
 id: this.data.id,
 name: this.data.name }
 })
 }
})


以上就是uni-app页面跳转及参数传递的相关知识。通过本文,希望你能够更好地理解和掌握这些知识,并在实际开发中灵活应用。

其他信息

其他资源

Top