uni-app页面跳转uni.navigateTo传递对象参数
时间: 2023-10-20 10:18:55 浏览: 135
在uni-app中,可以通过uni.navigateTo方法实现页面跳转,并且可以通过query参数传递字符串类型的参数。如果要传递对象参数,可以将对象转换为字符串再通过query参数传递。
例如,需要传递一个包含姓名和年龄的对象参数:
```javascript
let person = {
name: '张三',
age: 20
};
```
可以通过JSON.stringify方法将对象转换为字符串:
```javascript
let personString = JSON.stringify(person);
```
然后在调用uni.navigateTo方法时,通过query参数传递字符串类型的参数:
```javascript
uni.navigateTo({
url: '/pages/detail/detail?person=' + encodeURIComponent(personString)
});
```
在跳转到detail页面后,可以通过uni.getStorageSync方法获取query参数中的person字符串,并通过JSON.parse方法将其转换为对象:
```javascript
let personString = decodeURIComponent(options.query.person);
let person = JSON.parse(personString);
```
注意,在传递query参数时,需要使用encodeURIComponent方法对字符串进行编码,以避免特殊字符引起的问题。在获取query参数时,需要使用decodeURIComponent方法对字符串进行解码。
阅读全文