微信小程序开发学习笔记《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站学习黑马程序员课程时的学习笔记,如果有什么问题,烦请联系我删除。

  • 27
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tutgxuzyj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值