微信小程序中传递参数的方式有多种,适用于不同场景(如页面间跳转、组件通信、全局共享等)。以下是常用的参数传递方式及示例
一、页面间跳转传递参数(最常用)
通过 wx.navigateTo、wx.redirectTo 等跳转 API 的 url 携带参数,新页面在 onLoad 中接收。
- 传递参数(跳转页)
// 页面 A(pages/pageA/pageA.js)
wx.navigateTo({
// 在 url 后拼接参数(key=value 形式,多参数用 & 分隔)
url: '/pages/pageB/pageB?id=123&name=测试&isTrue=true'
});
- 接收参数(目标页
// 页面 B(pages/pageB/pageB.js)
onLoad(options) {
// options 中包含跳转时传递的所有参数
console.log(options.id); // 123(字符串类型,需自行转换数字)
console.log(options.name); // "测试"
console.log(options.isTrue); // "true"(注意:布尔值会被转为字符串,需手动处理)
// 处理类型转换
const id = Number(options.id);
const isTrue = options.isTrue === 'true';
}
注意
参数会被转为字符串,复杂类型(如对象、数组)不适合直接传递。
url 长度有限制(约 1024 字节),避免传递过大数据。
二、通过全局变量传递(跨页面共享)
利用 app.js 中的 globalData 存储全局数据,所有页面可访问。
1. 定义全局数据(app.js)
、、、js
// app.js
App({
globalData: {
userInfo: null<

最低0.47元/天 解锁文章
4032

被折叠的 条评论
为什么被折叠?



