赞
踩
在小程序中,页面跳转传参的方式有以下几种:
1. URL参数传递:可以通过在目标页面的URL后面拼接参数来传递数据。例如:
- wx.navigateTo({
- url: '/pages/targetPage?param1=value1¶m2=value2',
- })
在目标页面的onLoad函数中可以通过options对象获取传递的参数:
- onLoad: function(options) {
- console.log(options.param1); // 输出 value1
- console.log(options.param2); // 输出 value2
- }
2. 全局变量传递:可以在app.js中定义一个全局数据对象,用于存储需要传递的参数。例如:
- // app.js
- App({
- globalData: {
- param1: '',
- param2: ''
- }
- })
-
- // 页面A中设置参数值
- getApp().globalData.param1 = 'value1';
- getApp().globalData.param2 = 'value2';
-
- // 页面B中获取参数值
- var param1 = getApp().globalData.param1;
- var param2 = getApp().globalData.param2;
3. Storage本地存储传递:可以使用小程序提供的本地存储API来传递数据。例如:
- // 页面A中设置参数值
- wx.setStorageSync('param1', 'value1');
- wx.setStorageSync('param2', 'value2');
-
- // 页面B中获取参数值
- var param1 = wx.getStorageSync('param1');
- var param2 = wx.getStorageSync('param2');
4. Event事件传递:可以通过事件的方式在页面之间传递参数。例如:
在页面A中定义一个事件:
- // 页面A
- Page({
- handleClick: function() {
- var param1 = 'value1';
- var param2 = 'value2';
- this.triggerEvent('passParams', {param1, param2});
- }
- })
在页面B中监听该事件并获取参数值:
- // 页面B
- Page({
- onLoad: function() {
- this.onPassParams = function(event) {
- console.log(event.detail.param1); // 输出 value1
- console.log(event.detail.param2); // 输出 value2
- }
- this.on('passParams', this.onPassParams);
- },
- onUnload: function() {
- this.off('passParams', this.onPassParams);
- }
- })
这些是常见的小程序页面跳转传参的方式,你可以根据具体需求选择适合的方式进行参数传递。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。