一、 跳转传递
在跳转前,将需要传递的对象参数转为JSON字符串,然后用encodeURIComponent进行编码,拼接在url后面。
- 在uni-app中,实现页面跳转并传递对象参数,可以通过以下方法:
// 要跳转的页面路径
const url = '/pages/detail/detail'
// 要传递的对象参数
const obj = {
id: 123,
name: 'test'
}
// 将对象参数转为JSON字符串,并使用encodeURIComponent编码
const params = encodeURIComponent(JSON.stringify(obj))
// 跳转页面并传递对象参数
uni.navigateTo({
url: `${url}?params=${params}`
})
二、页面接收使用
在跳转后的页面,通过onLoad事件获取传递的对象参数,并使用decodeURIComponent解码,然后转为对象。
export default {
data() {
return {
obj: null
}
},
onLoad(options) {
this.obj = JSON.parse(decodeURIComponent(options.params));
}
}
三、 补充方法(简单粗暴)
- 在当前页使用
JSON.stringify(obj)转为字符串
- 在跳转后的页面使用
JSON.parse(obj)解析