美文网首页
微信小程序组件事件传递

微信小程序组件事件传递

作者: 倪小辉正在奋斗 | 来源:发表于2018-05-24 20:47 被阅读0次

小程序组件 wxml 里的绑定点击事件

  1. <view bindtap='popViewDismissTap' class="weui-btn weui-btn_mini weui-btn_default">取消</view>
  2. <viewbindtap='popViewSureTap'class="weui-btn weui-btn_mini weui-btn_default">确定</view>

组件JS文件里实现点击方法,并触发「popViewDismissEvent」事件,相应的监听者就会收到触发信号

  1. methods: {
  2. 'popViewDismissTap':function(e){
  3. console.log('dismiss')
  4. // this.setData({
  5. // show:false
  6. // })
  7. // var myEventDetail = {} // detail对象,提供给事件监听函数
  8. // var myEventOption = {} // 触发事件的选项
  9. // this.triggerEvent('myevent', myEventDetail, myEventOption)
  10. var myEventDetail = {"test":"123"} // detail对象,提供给事件监听函数
  11. var myEventOption = {} // 触发事件的选项
  12. this.triggerEvent('popViewDismissEvent', myEventDetail, myEventOption)
  13. },
  14. 'popViewSureTap':function(e){
  15. console.log('show');
  16. var myEventDetail = e.detial // detail对象,提供给事件监听函数
  17. var myEventOption = {} // 触发事件的选项
  18. this.triggerEvent('popViewSureEvent', myEventDetail, myEventOption)
  19. }
  20. }

在使用组件的地方使用bindXXX属性监听相应的触发事件

  1. <component-popView item='{{popViewData}}' bindpopViewSureEvent="onPopViewSureEvent" bindpopViewDismissEvent='onPopViewDismissEvent'>
  2. <viewslot='content'>
  3. <inputclass="weui-input"bindinput='bindKeyInput'style='border:2rpx solid #f4f4f4;border-radius: 4rpx;'></input>
  4. </view>
  5. </component-popView>

然后在相应的JS文件里实现onPopViewDismissEvent方法即可

相关文章

网友评论

      本文标题:微信小程序组件事件传递

      本文链接:https://www.haomeiwen.com/subject/pihejftx.html