【微信小程序】-- 页面导航 -- 导航传参(二十四)

简介: 【微信小程序】-- 页面导航 -- 导航传参(二十四)



一、 导航传参

  前面已经介绍了实现页面导航的两种方式:声明式导航和编程式导航,两者的区别就是声明式导航直接 wxml 里直接指定跳转路径,而编程式导航是在 js 端进行指定,通过栗子学习了这两种方式如何使用。接下来就来讲解一下页面导航最后一点内容–导航传参。话不多说,让我们原文再续,书接上回吧。

  导航传参顾名思义就是在跳转页面的时候可以向页面传递参数进行使用,其实现方式也是分为以下两种:

  • 声明式传参
      在 <navigator> 导航组件上,可以指定对应的参数;
  • 编程式传参

  在 wx.navigateTo(Object object) 中可以指定参数;

二、声明式导航传参

  在微信小程序中,navigator 组件的 `url`` 属性用来指定将要跳转到的页面的路径。同时,路径的后面还可以携带对应的参数:

参数 拼接方式
参数与路径 使用 ? 分隔
参数键与参数值 用 = 相连
不同参数 用 & 分隔

  下面通过栗子来学习一下,具体代码如下:

<navigator url="/pages/info/info?name=我是夜阑的狗&age=99">点我带参数跳转到info页面</navigator>

  来看一下参数是否传递过去了:

  跳转到当前页面之后,可以选择左下角的页面参数查看参数:

三、编程式导航传参

  通过调用 wx.navigateTo(Object object) 方法跳转页面时,也可以携带参数,具体代码如下:

  • home.wxml

  创建按钮,通过按钮方式跳转到消息页面。

<button bindtap="gotoInfoEvent">点我带参数跳转到info页面</button>
  • home.js
/**
   * 通过编程式导航带参数跳转到 info 页面
   */
  gotoInfoEvent(){
    wx.navigateTo({
      url: '/pages/info/info?name=我的夜阑的狗&id=阿米娅',
    })
  },

  此时就完成编程式传参,可以来看下运行效果:

  跳转到当前页面之后,可以选择左下角的页面参数查看参数:

四、在 onLoad 中接收导航参数

  当通过声明式导航传参或编程式导航传参将参数传过来的时候,可以直接在 onLoad 事件中直接获取到,并将该形参挂载到当前页面的 data 数据中供页面进行使用,具体代码如下所示:

  • info.js

  将接受到的形参进行打印出来,并挂载到 dataquery 对象中。

Page({
  /**
   * 页面的初始数据
   */
  data: {
    // 导航传递过来的参数对象
    query:{}
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    console.dir(options);
    this.setData({
      query:options
    })
  },
})

  可以来看一下运行效果:

  从上面结果可以看出,成功的把传过来的形参打印出来,这时候可以来看下 AppData 中的 query 数据怎么变化:

声明式传参:

编程式传参:

  这里可以发现,声明式传参和编程式传参都会改变 AppDataquery 对象,并不会产生覆盖。


总结

  感谢观看,这里就是页面导航 – 导航传参的介绍使用,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。

相关文章
|
2月前
|
小程序 前端开发 开发者
小程序的页面如何布局?
【10月更文挑战第16天】小程序的页面如何布局?
82 1
|
3月前
|
JSON 小程序 前端开发
微信小程序的目录结构及页面结构的说明
本文详细介绍了微信小程序的目录结构、页面组成部分以及项目的全局配置文件,阐述了小程序的宿主环境和运行机制,包括小程序启动和页面渲染的过程。
微信小程序的目录结构及页面结构的说明
|
3月前
|
小程序 JavaScript API
微信小程序开发学习之页面导航(声明式导航和编程式导航)
这篇文章介绍了微信小程序中页面导航的两种方式:声明式导航和编程式导航,包括如何导航到tabBar页面、非tabBar页面、后退导航,以及如何在导航过程中传递参数和获取传递的参数。
微信小程序开发学习之页面导航(声明式导航和编程式导航)
|
3月前
|
小程序 前端开发 生物认证
微信小程序如何将一个按钮放到页面的最底下?
微信小程序如何将一个按钮放到页面的最底下?
401 5
|
3月前
|
JSON 小程序 JavaScript
微信小程序页面事件,下拉刷新事件和上拉触底事件
这篇文章介绍了微信小程序中如何实现下拉刷新和上拉触底事件,包括开启下拉刷新、配置下拉刷新样式、监听下拉刷新事件,以及监听上拉触底事件和配置上拉触底的距离。
|
1月前
|
小程序 前端开发 JavaScript
在线课堂+工具组件小程序uniapp移动端源码
在线课堂+工具组件小程序uniapp移动端源码
32 0
在线课堂+工具组件小程序uniapp移动端源码
|
2月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
333 3
|
2月前
|
小程序 API
微信小程序更新提醒uniapp
在小程序开发中,版本更新至关重要。本方案利用 `uni-app` 的 `uni.getUpdateManager()` API 在启动时检测版本更新,提示用户并提供立即更新选项,自动下载更新内容,并在更新完成后重启小程序以应用新版本。适用于微信小程序,确保用户始终使用最新版本。以下是实现步骤: ### 实现步骤 1. **创建更新方法**:在 `App.vue` 中创建 `updateApp` 方法用于检查小程序是否有新版本。 2. **测试**:添加编译模式并选择成功状态进行模拟测试。
57 0
微信小程序更新提醒uniapp
|
4月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
116 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
|
4月前
|
小程序 前端开发 JavaScript
【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序
【避坑宝】是一款企业黑红名单吐槽小程序,旨在帮助打工人群体辨别企业优劣。该平台采用SpringBoot+MybatisPlus+uniapp+uview2等技术栈构建,具备丰富的注释与简洁的代码结构,非常适合实战练习与学习。通过小程序搜索“避坑宝”即可体验。
114 0
【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序
下一篇
DataWorks