首页 > 编程语言 >微信小程序中子父组件相互传值

微信小程序中子父组件相互传值

时间:2023-10-31 12:13:00浏览次数:36  
标签:自定义 微信 在子 customData 组件 data 传值 属性

父传子:

  • 父组件向子组件传递数据可以通过在子组件标签上绑定属性进行

1.在父组件的wxml文件中使用子组件,并为其绑定一个自定义属性,其中custom-data是自定义的属性名,dataFromParent是父组件中的数据

<!--父组件wxml-->
<child-component custom-data="{{dataFromParent}}"></child-component>

2.在子组件的js文件中通过properties字段声明要接收的属性,这里声明了一个名为customData的属性,并指定了其类型为String,初始值为空字符串。

// 子组件js
Component({
  properties: {
    customData: {
      type: String,
      value: ''
    }
  },
  // ...
})

3.在子组件的wxml文件中使用customData属性,这里直接显示customData属性对应的值。这样,在父组件中修改dataFromParent的值后,子组件中的customData属性也会随之更新。

<!-- 子组件wxml -->
<view>{{customData}}</view>

子传父:

  • 子组件向父组件传递数据可以通过自定义事件来实现

1.在子组件中通过triggerEvent方法触发一个自定义事件,并将数据作为参数传递给父组件,这里在点击按钮后触发了一个名为myevent的自定义事件,并将data作为参数传递给了父组件

// 子组件js
Component({
  // ...
  methods: {
    onTapBtn() {
      const data = 'hi, parent'
      this.triggerEvent('myevent', {data})
    }
  }
})

2.在父组件中使用子组件时,绑定要接收事件的函数,并在该函数中获取传递过来的数据,这里在子组件上绑定了myevent事件,并指定其对应的处理函数为onMyEvent。当子组件触发自定义事件后,父组件中的onMyEvent函数会被调用,并且可以通过event.detail获取到传递过来的数据。

<!-- 父组件wxml -->
<child-component bind:myevent="onMyEvent"></child-component>
// 父组件js
Page({
  onMyEvent(event) {
    console.log(event.detail.data) // 输出 hello parent
  }
})```

 

标签:自定义,微信,在子,customData,组件,data,传值,属性
From: https://www.cnblogs.com/panwudi/p/17799950.html

相关文章

  • 【ROS2机器人入门到实战】学会使用RVIZ2-TF组件
    2.可视化坐标变换写在前面当前平台文章汇总地址:ROS2机器人从入门到实战获取完整教程及配套资料代码,请关注公众号<鱼香ROS>获取教程配套机器人开发平台:两驱版|四驱版为方便交流,搭建了机器人技术问答社区:地址fishros.org.cn运行上节课的示例,打开终端输入rviz2,打开rviz2,我们尝试在rv......
  • FreeRTOS上移植RT-thread的at组件
    因为一开始用的是FreeRTOS,因此,项目中的RTOS也是FreeRTOS,但是在项目开发过程中,发现需要解析AT指令集,因此来移植一波RT-thread的软件包。下次就用RT-thread了,纯纯浪费时间移植。首先捋清大概思路。1.串口接收中断被外界消息输入触发,中断在回调函数中将消息内容发给AT任务,并进行......
  • 界面控件DevExpress WPF Gauge组件 - 轻松实现个性化商业仪表盘
    DevExpressWPFGauge(仪表)控件包含了多种圆形仪表类型、水平和垂直线性仪表、分段和矩阵数字仪表以及状态指示器,同时还具有最终用户交互性的集成支持。P.S:DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着......
  • 分页组件
    myproject/app01/utils/pagination.py"""自定义分页组件以后如果想要使用这个分页组件,需要做:在视图函数中:fromapp01.utils.paginationimportPaginationdefprettynum_list(request):#1.根据自己的情况去筛选自己的数据queryset=models.Pr......
  • 微信电脑版聊天图片DAT格式转为普通图片
    1-7不知道大家会不会有这样的苦恼,办公电脑用久了不知不觉间会提示某个盘内存将满的情况;这其实很大一部分是我们日常工作中微信聊天里收发的图片、视频、文件占的内存,这些是非常占用电脑空间的。如果要清理的话,视频和文件都可以直接查看,没用的直接删除就行。但是图片不行,图片是被加......
  • 手机通讯录好备份,那微信通讯录怎么办
    6-8微信联系已经成为我们日常生活沟通联系最常用的渠道之一,那么对于通讯录的提前备份就越来越重要了,防患于未然。如果是手动一个个联系人去抄写备份的话会花很多时间,特别是有些通讯联系人比较多的朋友。这里有一个小工具《微信通讯录极速导出工具》,可以方便快速地一键导出所有的微......
  • 如何导出比较有纪念意义的微信的聊天记录
    12-6微信聊天已经成为我们日常生活中最常用的联系方式之一,很多信息都是通过微信来沟通的。但随着时间的推移、手机的更新换代,很多信息在不知不觉中会流失,但其中又有些是我们觉得比较有纪念意义不想被删除的。 那么如何导出这些信息去另外保存呢,这里介绍一个小软件叫做《微信的聊天......
  • 一个类似于Gridster的栅格布局系统Vue组件
    哈喽,我是老鱼,一名致力于在技术道路上的终身学习者、实践者、分享者!VueGridLayout是一个类似于Gridster的栅格布局系统,适用于Vue.js,灵感来源于ReactGridLayout。特性可拖拽可调整大小静态部件(不可拖拽、调整大小)拖拽和调整大小时进行边界检查增减部件时避......
  • k8s及其基本组件下载
    k8s_install.sh!/usr/bin/envbashset-eget_version(){containerd_version="v1.7.7"runc_version="v1.1.9"cni_version="v1.3.0"cri_tools_version="v1.27.1"kubernetes_version="v1.27.7"kubernetes_release_v......
  • 微信定时发圈,快人一步不落索
    现在的社交媒体运营已经成为了私域流量获取的重要手段,而微信作为最大的社交平台之一,更是吸引了众多使用者。但是,你是否曾经感叹过每天手动发朋友圈的繁琐?是否希望能够事先设置好定时发送的功能,让你的朋友圈自动更新,省去你手动发送的麻烦?自从用了好友推荐自用的超实用的微信定时发朋......