微信小程序页面传值的方式主要有以下五种:
使用 wx.navigateTo
或 wx.redirectTo
进行页面跳转时传递参数
wx.navigateTo({ url: '/pages/second/second?param1=value1¶m2=value2' })
在目标页面通过 getIntentData()
获取参数:
Page({ data: { param1: '', param2: '' }, onLoad: function (options) { this.setData({ param1: options.query.param1, param2: options.query.param2 }) } })
使用 wx.showModal
或 wx.showActionSheet
进行弹窗提示时传递参数
弹窗提示代码示例:
wx.showModal({ title: '提示', content: '需要传递参数吗?', success (res) { if (res.confirm) { // 在这里调用目标页面并传递参数 wx.navigateTo({ url: '/pages/second/second?param1=value1¶m2=value2' }) } else if (res.cancel) { console.log('用户取消了操作') } } })
在目标页面通过 getIntentData()
获取参数:
Page({ data: { param1: '', param2: '' }, onLoad: function (options) { this.setData({ param1: options.query.param1, param2: options.query.param2 }) } })
使用 wx.setStorageSync
或 wx.setStorage
存储数据,在目标页面通过 wx.getStorageSync
或 wx.getStorage
获取数据。这种方式可以用于跨页面传值。
使用 onShareAppMessage
定义分享回跳页面时传递参数。这种方式主要用于用户点击右上角分享按钮,分享给好友或朋友圈时传递参数。
使用云开发数据库进行页面间传值。这种方式需要将数据存储在云开发数据库中,并在目标页面中读取数据。具体实现可以参考微信云开发官方文档。