uniapp中 uni.switchTab跳转params怎么传递参数
时间: 2023-02-08 13:30:36 浏览: 314
在 uni-app 中,可以使用 uni.switchTab(OBJECT) 方法来切换到指定的 tab 页面,其中 OBJECT 参数中可以包含 url 和 params 两个属性,用于指定要跳转的页面路径和传递的参数。
示例:
```
uni.switchTab({
url: '/pages/index/index',
params: {
name: '参数名',
value: '参数值'
}
});
```
在目标页面的 onLoad 生命周期函数中可以通过 getCurrentPages()[getCurrentPages().length - 1].options 获取传递过来的参数
示例:
```
onLoad: function (options) {
console.log(options.name)
console.log(options.value)
}
```
在目标页面中获取到的options就是传递过来的params
可以通过上述方法在 uni-app 中使用 uni.switchTab() 方法传递参数。
相关问题
uniapp中 uni.switchTab跳转怎么传递参数
在 uni-app 中,使用 uni.switchTab 跳转页面时可以通过在 url 中添加 query 参数来传递参数。例如:
```
uni.switchTab({
url: '/pages/index/index?id=1&name=test'
});
```
这样就可以在 index 页面的 onLoad 方法中通过 this.options.id 和 this.options.name 来获取传递的参数了。
也可以使用 uni.navigateTo 和 uni.redirectTo 两个 API 来传递参数。
```
uni.navigateTo({
url: '/pages/index/index?id=1&name=test'
});
```
```
uni.redirectTo({
url: '/pages/index/index?id=1&name=test'
});
```
这两个 API 会跳转到新的页面并且不会关闭当前页面,使用方式和 uni.switchTab 类似。
uniapp switchTab页面跳转传递参数
在uniapp中,可以使用uni.switchTab()方法进行tab页面跳转。但是,该方法并不支持传递参数。不过,我们可以通过其他方式来实现传递参数的效果。以下是两种实现方式:
1.使用uni.setStorageSync()方法将参数存储到本地缓存中,然后在跳转到目标页面后,再使用uni.getStorageSync()方法获取参数。具体实现代码如下:
```javascript
// 在当前页面设置参数
uni.setStorageSync('key', 'value');
// 跳转到目标页面
uni.switchTab({
url: '/pages/community/community', success: function () {
// 在目标页面获取参数
var value = uni.getStorageSync('key');
console.log(value); // 输出:value
}
});
```
2.使用uni.navigateTo()方法进行页面跳转,并将参数通过url传递。具体实现代码如下:
```javascript
// 在当前页面跳转到目标页面,并传递参数
uni.navigateTo({
url: '/pages/community/community?key=value'
});
// 在目标页面获取参数
console.log(this.$route.query.key); // 输出:value
```
需要注意的是,第二种方式需要在目标页面中使用uni.onLoad()方法来获取参数。具体实现代码如下:
```javascript
onLoad: function (options) {
console.log(options.key); // 输出:value
}
```