小程序页面传值

简介: 本文介绍了微信小程序中父子页面的传值方法。父页面向子页面传值可通过绑定事件跳转,使用`data-`属性传递参数,然后在子页面的`onLoad`中接收。子页面向父页面传值则通过用户选择内容后调用父页面的方法,利用`getCurrentPages()`获取父页面实例,进而修改父页面的数据。

一、父页面向子页面传值

一、通过绑定事件跳转

1.vxml在你需要跳转的按钮或者图片中绑定bindtap的内容,data-是需要跳转的参数的,其中的id为你想要跳转的参数。{}中的为跳转后携带的值。

<view class="body_left">
    <image src="/image/pause.png" bindtap="goPaly" data-id="{
   
   {item.id}}"></image>
  </view>

==data-表示此次绑定事件要传的参数==
2.js页面中通过固定语句语法e.currentTarget.dataset为语法,其中在后面加入你的跳转参数。然后通过微信的wx.navigateTo进行跳转。其中在URL的路径中问好前面的为你需要跳转的路径,后面的为跳转的参数以及携带的值

goPaly(e){
   
   
  console.log('点击了',ids)
  wx.navigateTo({
   
   
    url: '/pages/palyMusic/palyMusic?id='+id+'&ids='+ids,
  })
},

==1.wx.navigateTo 保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。==
==2.wx.switchTab跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面==
3.跳转页面的接受数据js,通过页面的监听函数onLoad函数进行页面的接受。options来接受数据

onLoad: function (options) {
   
   
    // 接受id
    var id=options.i
    this.setData({
   
   
      id:id
    })
  },

二、通过标签直接跳转

<navigator url="/pages/index/index"></navigator>

二、子页面向父页面传值

==通过父页面跳转到子页面,由用户选择内容后将选择的内容携带传到父页面。==
xml在你需要跳转的按钮或者图片中绑定bindtap的内容,data-是需要跳转的参数的,其中的id为你想要跳转的参数。{}中的为跳转后携带的值。
1.父页面

<view bindtap="chooseTopic">{
   
   {
   
   topic}}</view>

js

 data: {
   
   
   topic:"请选择话题"
  },
 chooseTopic(){
   
   
   wx.navigateTo({
   
   
     url: '/pages/topic/topic',
   })
 },

在这里插入图片描述

2.子页面
html

<view class="content" wx:for="{
   
   {topicList}}">
 <view class="item" bindtap="chooseTopic" data-name="{
   
   {item}}">
  <view>{
   
   {
   
   item.title}}</view>
  <view>{
   
   {
   
   item.count}}</view>
 </view>
</view>

js

  */
  data: {
   
   
   topicList:[
     {
   
   title:'过年了',count:'100'},
     {
   
   title:'回家了',count:'200'}
   ]
  },
  chooseTopic(e){
   
   
   var topiceInfo= e.currentTarget.dataset.name
   //获取到当前的页面
   var pages=getCurrentPages()
   //获取到父页面
   var prepages=pages[pages.length-2];
  //1.直接修改父页面的值
   prepages.setData({
   
   
     topic:topiceInfo.title
    })
       // 2.通过方法体传值
    prepages.setTopice(topiceInfo)
   console.log(topiceInfo)
   wx.navigateBack({
   
   })
 },

在这里插入图片描述

以上是本人的学习经验,希望可以帮助更多的人。

目录
相关文章
|
7月前
|
移动开发 小程序
如何让uni-app开发的H5页面顶部原生标题和小程序的顶部标题不一致?
如何让uni-app开发的H5页面顶部原生标题和小程序的顶部标题不一致?
|
2月前
|
小程序 前端开发 开发者
小程序的页面如何布局?
【10月更文挑战第16天】小程序的页面如何布局?
82 1
|
3月前
|
JSON 小程序 前端开发
微信小程序的目录结构及页面结构的说明
本文详细介绍了微信小程序的目录结构、页面组成部分以及项目的全局配置文件,阐述了小程序的宿主环境和运行机制,包括小程序启动和页面渲染的过程。
微信小程序的目录结构及页面结构的说明
|
4月前
|
小程序
微信小程序多种跳转页面方式
微信小程序多种跳转页面方式
|
4月前
|
缓存 小程序 数据库
小程序页面之间(传值)传递数据的方法
小程序页面之间(传值)传递数据的方法
194 63
|
3月前
|
小程序 JavaScript API
微信小程序开发学习之页面导航(声明式导航和编程式导航)
这篇文章介绍了微信小程序中页面导航的两种方式:声明式导航和编程式导航,包括如何导航到tabBar页面、非tabBar页面、后退导航,以及如何在导航过程中传递参数和获取传递的参数。
微信小程序开发学习之页面导航(声明式导航和编程式导航)
|
3月前
|
小程序 前端开发 生物认证
微信小程序如何将一个按钮放到页面的最底下?
微信小程序如何将一个按钮放到页面的最底下?
401 5
|
3月前
|
JSON 小程序 JavaScript
微信小程序页面事件,下拉刷新事件和上拉触底事件
这篇文章介绍了微信小程序中如何实现下拉刷新和上拉触底事件,包括开启下拉刷新、配置下拉刷新样式、监听下拉刷新事件,以及监听上拉触底事件和配置上拉触底的距离。
|
4月前
|
小程序 开发者
万能的微信小程序个人主页:商城系统个人主页、外卖系统个人主页、购票系统个人主页等等【全部源代码分享+页面效果展示+直接复制粘贴编译即可】
这篇文章分享了四个不同应用场景下的微信小程序个人主页的源代码和页面效果展示,包括商城系统、外卖系统、医疗挂号和电影购票系统的个人主页。提供了完整的页面布局和样式代码,允许开发者直接复制粘贴并根据自己的项目需求进行简单的改造使用。
万能的微信小程序个人主页:商城系统个人主页、外卖系统个人主页、购票系统个人主页等等【全部源代码分享+页面效果展示+直接复制粘贴编译即可】
|
5月前
|
小程序 安全 搜索推荐
【微信小程序开发实战项目】——个人中心页面的制作
本文介绍了如何设计和实现一个网上花店的微信小程序,包括个人中心、我的订单和我的地址等功能模块。个人中心让用户能够查看订单历史、管理地址和与客服互动。代码示例展示了`own.wxml`、`own.wxss`和`own.js`文件,用于构建个人中心界面,包括用户信息、订单链接、收藏、地址、客服和版本信息。我的订单部分展示了订单详情,包括商品图片、名称、销量、价格和订单状态,用户可以查看和管理订单。我的地址功能允许用户输入和编辑收货信息,包括联系人、性别、电话、城市和详细地址。每个功能模块都附有相应的WXML和WXSS代码,以及简洁的样式设计。
274 0
【微信小程序开发实战项目】——个人中心页面的制作