父组件onTouch,子组件onClick如何做到只响应onClick,不响应onTouch

父组件onTouch,子组件onClick如何做到只响应onClick,不响应onTouch

HarmonyOS
2024-07-24 11:11:46
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
南风春和

在Button组件中,可以绑定onTouch事件,并在该事件的处理函数中,运用stopPropagation()方法,以确保onTouch事件的冒泡过程不会向上传递至其父组件,从而有效阻止冒泡传递的发生。

@Entry
@Component
struct Index {

  build() {
    Row() {
点击我')
        .width(100)
        .width(100)
        .backgroundColor('#f00')
        .onClick(() => {
          console.log('Button onClick');
        })
        .onTouch((event) => {
          console.log('Button onTouch');
          event.stopPropagation();
        })
    }
    .onTouch(() => {
      console.log('Row onTouch');
    })
  }
}
分享
微博
QQ
微信
回复
2024-07-24 20:00:19