小程序组件通信

在需要用组件的json文件里设置

找到组件的地址

 "usingComponents": {
     "TabList":"../../components/TabList/TabList"
  },

 随后在页面里使用标签

  <TabList tabs="{{tabs}}"  bind:tabsItemChange="handleItemTap">
     <!-- <block wx:if="{{tabs[0].isActive}}">
         aa
     </block>
     <block wx:elif="{{tabs[1].isActive}}">
       bb
     </block>
     <block wx:elif="{{tabs[2].isActive}}">
       cc
     </block> -->
</TabList>

父穿子:

在父组件中,利用子组件标签的属性传递数据,在自组件的properties里接受参数,可以设置type类型或者值

 properties: {
    tabs:{
      type:Array,
      value:[]
    }
  },

子传父:

在子组件先在wxml页面写入事件

       <view
        wx:for="{{tabs}}"
        wx:key="id"
        class="title_item {{item.isActive?'active':''}}"
        bindtap="handleItemTap"
        data-index="{{index}}"
        >
            {{item.value}}
       </view>

在js页面的methods里触发事件并向上派发事件

 /**
   * 组件的方法列表
   */
  methods: {
    handleItemTap(e){
      const {index}=e.currentTarget.dataset;
      this.triggerEvent('tabsItemChange',{index})
    }
  }

在标签里使用事件:

<TabList tabs="{{tabs}}"  bind:tabsItemChange="handleItemTap">
<TabList/>

在js文件里使用方法进行逻辑操作

handleItemTap(e){


}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值