前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >小程序子组件向父组件传值_小程序组件通信

小程序子组件向父组件传值_小程序组件通信

作者头像
全栈程序员站长
发布2022-10-04 08:59:32
3140
发布2022-10-04 08:59:32
举报

大家好,又见面了,我是你们的朋友全栈君。

父组件页面是carts.wxml 子页面是product.html

子组件wxml代码

代码语言:javascript
复制
<view class='cartAllSel'  bindtap="bindSelectAll"  >
    <icon wx:if="{
  
  {selectedAllStatus}}" class='iconDel' type='success' color='#4D4D4D' size="20" ></icon>
    <icon  class='iconDel' wx:else  type="circle" size="20"></icon>
    <text class='product-title'>全选</text>
</view>

子组件js代码

代码语言:javascript
复制
 methods: {
    //购物车全选
    bindSelectAll: function (e) {
      var that =this;
      var allChecked = !this.data.selectedAllStatus;
      var carts = this.data.productList;
      for (var i = 0; i < carts.length; i++) {
        carts[i].selected = allChecked;
      }
      if (allChecked){
        this.data.checkedNum = carts.length;
      }else{
        this.data.checkedNum=0;
      }
      //需要添加部分,traCheckedNum是父页面调用需要  
      var checkeddata = { checkedNum: this.data.checkedNum};
      this.triggerEvent("traCheckedNum", checkeddata )
      
      this.setData({
        productList: carts,
        selectedAllStatus: allChecked,
      })
    },
}

父页面 carts.wxml

需要在子组件处添加 bind:traCheckedNum=”checkNum” checkNum是父js中的方法

代码语言:javascript
复制
<ProductList  bind:traCheckedNum="checkNum" productList="{
  
  {cartList}}" listType="{
  
  {'cart'}}"></ProductList>

父页面 carts.js

注意checkNum方法是不能写在Methods中不然小程序会报找不到该组件,就和data平级就可以

代码语言:javascript
复制
checkNum: function (e) {
    this.setData({
      checkedNum: e.detail.checkedNum,
    })
    console.log(e.detail.checkedNum)
 }

父页面carts.wxml引用值

代码语言:javascript
复制
 <view>已选 {
  
  {checkedNum}}</view>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月5日 上,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档