小程序采坑记(九) 组件通信

通常我们写小程序页面的js文件时,里面是小程序的生命周期函数和data

但是在组件的js文件里面是Component({})

通信方式一:properties,其实和vue的props一样。

properties主要就是用于组件和页面,或者组件和组件的通信,你可以设置属性的类型和默认值。
在这里插入图片描述

<video-tencent  url='{{item.videoUrl}}'  coverUrl='{{item.activityCover}}'></video-tencent>

在使用组件的时候,属性对应,就可以把数据从页面传到组件。

通信方式二:

事件通信,组件一般只派发事件,传递数据,业务逻辑通常写在使用组件的页面里面

如:
组件里面的其中一个元素的点击事件

<view >
  <text bindtap='myevent'>测试</text>
</view>
Component({
data:{

},
methods:{
  myevent(e){
    var d = 'sss'
    var eventDetail = {
      e:e,
      d:'bbb'
    }
    this.triggerEvent("myevent", eventDetail)
  }
}
})

注意事件派发用this.triggerEvent(),第一个参数为派发事件的 名称,第二个为派发的参数,是一个object

使用组件的页面

<view class="container">

  <detail bind:myevent='showDetailInfo'></detail>
</view>

使用组件页面的bind:后面这个为组件派发事件的名称,等号后面是我们的事件处理逻辑。

  showDetailInfo(e){
    console.log(e)
  },

在这里插入图片描述
这个事件处理逻辑的参数就包含了从组件传过来的参数,在e.detail里面。

其实这两个通信的方法跟vue的都基本上一样的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值