点击事件冒泡不符合预期
测试代码如下:
@Entry
@Component
struct Index {
private arr: number[] = [0]
build() {
Stack() {
Text("父子关系")
.position({ x: 100, y: 50 })
.height(50)
.width(100)
Stack() {
List() {
ListItemGroup() {
ForEach(this.arr, (item: number) => {
ListItem() {
Text(item.toString())
.width('100%')
.height(100)
.backgroundColor(Color.Red)
.fontSize(16)
.textAlign(TextAlign.Center)
}
// .onClick((event:ClickEvent) => {
// console.log(“事件响应:onClick 子节点(list中cell)点击红色”)
// })
.onTouch((event: TouchEvent) => {
if (event.type == TouchType.Down) {
console.log("事件响应: onTouch 子节点(list中cell)点击红色")
}
event.stopPropagation()
})
}, (item: string) => item)
}
}
.width(150)
.height(130)
}
.position({ x: 100, y: 100 })
.width(150)
.height(130)
.backgroundColor(Color.Gray)
.borderWidth(2)
.borderColor(Color.Black)
.clip(false)
.onClick((event: ClickEvent) => {
console.log("事件响应: onClick 父节点 点击灰色")
})
}
.width("100%")
.height("100%")
}
}
onTouch 子节点(list中cell)点击红色
onClick 父节点 点击灰色
期望效果:
onTouch 子节点(list中cell)点击红色
子节点onTouch 已经设置阻止冒泡,父节点不应该影响 onClick事件
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
RichText组件font标签size属性不符合预期
561浏览 • 1回复 待解决
相对布局RelativeContainer,当子组件设置了margin时居中效果不符合预期
917浏览 • 1回复 待解决
相对布局RelativeContainer,当子组件设置了margin时,居中效果不符合预期
718浏览 • 1回复 待解决
如何阻止组件的鼠标事件冒泡到父组件
663浏览 • 1回复 待解决
键鼠事件可以设置冒泡阻断,其他事件是否支持
624浏览 • 1回复 待解决
文档中提到键鼠事件可以设置冒泡阻断,其他事件是否支持
627浏览 • 1回复 待解决
父子组件间点击事件,有没有方法能够控制点击事件在不同的情况触发父/子组件的点击事件
353浏览 • 1回复 待解决
服务卡片java如何设置点击事件
7851浏览 • 1回复 待解决
鸿蒙CommonDialog怎么监听按钮点击事件?
4671浏览 • 1回复 待解决
eTS position定位点击事件穿透,怎么阻止?
2507浏览 • 1回复 待解决
点击事件,@State 页面未生效,在线等
1371浏览 • 0回复 待解决
是否可以通过代码触发组件的点击事件
552浏览 • 1回复 待解决
list组件,当设置点击事件时,如何知道当前点击的list索引号
6196浏览 • 1回复 待解决
JS开发服务卡点击事件如何动态传入参数
5087浏览 • 1回复 待解决
ArkUI如何实现自定义组件传递点击事件
1530浏览 • 2回复 待解决
java的服务卡片button点击事件要写哪里呢?
6830浏览 • 1回复 已解决
当父组件绑定了onTouch,子组件绑定了onClick,点击子组件如何阻止冒泡传递
30浏览 • 1回复 待解决
利用xml布局,点击跳转到新页面,返回后,点击事件不再起作用
6351浏览 • 1回复 待解决
Swiper组件放在Web组件中,无法响应点击事件。
376浏览 • 1回复 待解决
父组件中如何处理子组件内点击事件
1101浏览 • 1回复 待解决
是否有符合要求的半弹窗组件
552浏览 • 1回复 待解决
如何实现带有点击事件的混合样式文本效果
663浏览 • 1回复 待解决
Stack堆叠容器点击事件无法穿透怎么办啊?
789浏览 • 1回复 待解决
如何将某个组件的点击事件传递给其他组件
774浏览 • 1回复 待解决
image.createPixelMap的option中的pixelMapFormat没有按预期生效
560浏览 • 1回复 待解决
stopPropagation阻止冒泡是onTouch的方法,不支持阻止点击事件的冒泡,onClick点击事件默认阻止事件冒泡。
例如:子组件注册了点击事件,则不管onTouch中stopPropagation是否阻止onTouch事件的冒泡,父组件的onClick时间均不会触发,onTouch和onClick时间互不影响。