父组件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
相关问题
TextInput的defaultFocus不响应
1520浏览 • 1回复 待解决
Hyperlink的onTouch预览报错
1819浏览 • 1回复 待解决
HarmonyOS Tab组件无法响应onPageShow
307浏览 • 1回复 待解决
组件调用组件的方法
1167浏览 • 1回复 待解决
如何拦截onTouch事件传递
532浏览 • 1回复 待解决
Web组件拦截页面请求响应
802浏览 • 1回复 待解决
如何设置组件组件宽度变化
2067浏览 • 1回复 待解决
组件调用组件里的方法
194浏览 • 1回复 待解决
组件组件传递函数
204浏览 • 1回复 待解决
怎么透传onClick事件?
221浏览 • 1回复 待解决
组件如何处理组件内点击事件
2629浏览 • 1回复 待解决