微信小程序页面跳转传参
时间: 2025-02-06 15:13:38 浏览: 50
### 微信小程序页面跳转传递参数的方法
在微信小程序中,可以通过`wx.navigateTo`方法来实现在页面间跳转的同时传递参数。对于简单的数据类型可以直接附加到URL后面作为查询字符串的一部分;而对于复杂的数据结构(如对象),则需先将其序列化为JSON字符串再进行传输。
#### 基本语法
当需要从一个页面导航至另一个新页面时,可调用如下API:
```javascript
wx.navigateTo({
url: '目标页面路径?参数名1=值1&参数名2=值2...'
})
```
其中,“?”之后的部分即是要发送给下一个页面的信息[^3]。
#### 实际案例展示
假设有一个列表页想要链接到详情页,并且希望把选中的项目信息一并带给后者处理,则可以在触发事件处理器内完成此操作:
```javascript
// 列表项点击响应函数
function onItemTap(e){
let itemIndex = e.currentTarget.dataset.index;
// 获取当前项目的详细资料
let selectedItemInfo = JSON.stringify(this.data.items[itemIndex]);
// 执行页面切换动作并向目的地址追加所需携带的数据
wx.navigateTo({
url:`../detail/detailPage?itemData=${selectedItemInfo}`
});
}
```
上述代码片段展示了如何通过`JSON.stringify()`方法将JavaScript对象转换成JSON格式字符串以便于附着在请求链接上[^4]。
而在接收端——也就是被访问的目标页面中,应当重写其默认加载行为以读取这些传入的变量:
```javascript
Page({
onLoad:function(option){
try {
// 解析接收到的对象形式参数
this.setData({
receivedObject : JSON.parse(decodeURIComponent(option.itemData))
})
} catch(error) {}
// 对其他简单类型的参数做相应处理...
}
});
```
这里利用了`decodeURIComponent()`解码可能存在的特殊字符编码问题,确保能正确解析原始数据[^5]。
阅读全文
相关推荐


















