当前位置: 首页 > news >正文

微信小程序开发学习笔记《11》导航传参

微信小程序开发学习笔记《11》导航传参

博主正在学习微信小程序开发,希望记录自己学习过程同时与广大网友共同学习讨论。导航传参 官方文档

一、声明式导航传参

navigator组件的url属性用来指定将要跳转到的页面的路径。同时,路径的后面还可以携带参数:

  1. 参数与路径之间使用?分隔
  2. 参数键与参数值用=相连
  3. 不同参数用&分隔

代码与效果如下:
在这里插入图片描述
注意:这无法在跳转tabBar时传参
在这里插入图片描述
可以看到当我们尝试跳转至tabBar页面时,能成功跳转,但是参数没能成功传递。

二、编程式导航传参

调用**wx.navigateTo(Object object)**方法跳转页面时,也可以携带参数,查看官方文档可以发现,也是一样的套路。
官方文档
代码示例如下:

// wxml文件代码
<button bind:tap="gotoLogin">编程 登录</button>//.js文件代码gotoLogin(){wx.navigateTo({url: '/pages/login/login?name=ls&id=2024',})},

效果和上面声明式导航传参一样。

注意:这同样无法在跳转tabBar时传参

三、接收参数

上述两个讲了如何在导航跳转页面的时候传递参数,接下来讲述接收获取参数,因为传递过来的参数是总得利用起来的吧。

3.1 在onLoad中接收导航参数

通过声明式导航传参或编程式导航传参所携带的参数,可以直接在onLoad事件中直接获取到。

代码:

// 注意这个代码写在导航目的页面js文件处
onLoad(options) {console.log(options)},

代码与示例:
跳转
注:是跳转后的页面接收参数,所以js文件写在跳转后页面js文件中

3.2 挂载使用参数

onLoad事件中直接获取到的参数,作用域只在onLoad函数中,为了令所有函数都可以使用,我们通常可以挂载在data数据中,并通常使用query作为其接收对象。

具体地,在被导航页面js文件page下data中定义如下:
在这里插入图片描述
并在onLoad事件处理函数接收到页面导航传参后,将其幅值给data中的query,如下。

  onLoad(options) {console.log(options),this.setData({query: options})},

示例与效果如下:
在这里插入图片描述
可以看到上图中通过点击,确实将AppData中的query由空正确赋值为页面传参参数。

以上学习笔记都是博主在B站学习黑马程序员课程时的学习笔记,如果有什么问题,烦请联系我删除。

http://www.lryc.cn/news/279377.html

相关文章:

  • BikeDNA(七)外在分析:OSM 与参考数据的比较1
  • KY43 全排列
  • UltraScale 和 UltraScale+ 生成已加密文件和已经过身份验证的文件
  • 2023年全国职业院校技能大赛软件测试赛题—单元测试卷②
  • 极兔单号查快递,极兔快递单号查询,筛选出途经指定城市的单号
  • [redis] redis高可用之持久化
  • 云原生 微服务 restapi devops相关的一些概念说明(持续更新中)
  • 初学unity学习七天,经验收获总结
  • hcip实验2
  • js:使用canvas画一个半圆
  • 1.框架介绍项目环境配置与项目启动!
  • LeetCode算法题解:螺旋矩阵
  • 【Java 设计模式】设计原则之开放封闭原则
  • 数据分析求职-知识脑图
  • SQL-修改数据
  • Rockchip | FIQ-Debugger调试工具
  • 第二百六十三回 给geolocator插件提交问题
  • 分组背包问题
  • WinForm 中Label自动换行 解决方法
  • 【蓝桥杯软件赛 零基础备赛20周】第7周——二叉树
  • SpringBoot+SSM项目实战 苍穹外卖(12) Apache POI
  • Maven 基础总结篇
  • MySQL的导入导出及备份
  • 【机器学习】常见算法详解第2篇:K近邻算法各种距离度量(已分享,附代码)
  • @KafkaListener指定kafka集群
  • 什么是算法的空间复杂度?
  • WebDav协议相关软件@简单配置局域网内的http和WebDav服务器和传输系统
  • 自定义数据实现SA3D
  • 设计模式基础概念:探索设计模式的魅力
  • 【Leetcode】2182. 构造限制重复的字符串