小程序页面路由传参的方法?

在小程序中,可以使用页面路由传递参数。有以下几种方式可以实现:

  1. 通过 URL 参数传递:在跳转到目标页面时,可以在 URL 中添加参数。例如:

    javascript 复制代码
    	wx.navigateTo({
       		url: '/pages/index/index?id=' + id
    	})

    在目标页面的 onLoad 方法中可以通过 options 参数获取传递的参数:

    javascript 复制代码
    onLoad(options) {
      const key1 = options.key1;
      const key2 = options.key2;
    }
  2. 通过全局变量传递:可以通过小程序的全局变量来传递参数。在跳转到目标页面之前,先将参数存储在全局变量中,然后在目标页面中读取全局变量的值。例如:

    javascript 复制代码
    // 在跳转前存储参数到全局变量
    getApp().globalData.key1 = value1;
    getApp().globalData.key2 = value2;
    // 跳转到目标页面
    wx.navigateTo({
      url: '/pages/targetPage/targetPage'
    });

    在目标页面中可以通过 getApp().globalData 来获取全局变量的值。

  3. 使用 wx.setStorageSyncwx.getStorageSync:可以使用小程序的本地缓存来传递参数。在跳转前将参数存储在本地缓存中,然后在目标页面中读取本地缓存的值。例如:

    javascript 复制代码
    // 在跳转前存储参数到本地缓存中
    wx.setStorageSync('key1', value1);
    wx.setStorageSync('key2', value2);
    // 跳转到目标页面
    wx.navigateTo({
      url: '/pages/targetPage/targetPage'
    });

    在目标页面中可以通过 wx.getStorageSync 来获取本地缓存中的值。

相关推荐
萌萌哒草头将军19 分钟前
⚡⚡⚡尤雨溪宣布开发 Vite Devtools,这两个很哇塞 🚀 Vite 的插件,你一定要知道!
前端·vue.js·vite
小彭努力中1 小时前
7.Three.js 中 CubeCamera详解与实战示例
开发语言·前端·javascript·vue.js·ecmascript
浪裡遊2 小时前
跨域问题(Cross-Origin Problem)
linux·前端·vue.js·后端·https·sprint
LinDaiuuj2 小时前
判断符号??,?. ,! ,!! ,|| ,&&,?: 意思以及举例
开发语言·前端·javascript
敲厉害的燕宝2 小时前
Pinia——Vue的Store状态管理库
前端·javascript·vue.js
Aphasia3112 小时前
react必备JavaScript知识点(二)——类
前端·javascript
玖玖passion2 小时前
数组转树:数据结构中的经典问题
前端
呼Lu噜2 小时前
WPF-遵循MVVM框架创建图表的显示【保姆级】
前端·后端·wpf
珠峰下的沙砾2 小时前
Vue3 里 CSS 深度作用选择器 :global
前端·javascript·css
航Hang*2 小时前
WEBSTORM前端 —— 第2章:CSS —— 第3节:背景属性与显示模式
前端·css·css3·html5·webstorm