考虑这个组件:
<Card onClick={openWindowHandler}>
<Editable onDoubleClick={enableInputHandler} />
</Card>
Run Code Online (Sandbox Code Playgroud)
我想要实现的是仅onDoubleClick在调度事件时停止事件传播,因此openWindowHandler不会调用该函数。不过,onClick先火再说onDoubleClick!
我可以通过应用函数来区分调用的是哪种事件类型_.debounce,但此时事件已经被调度,因此无法调用stopPropagation().
<Card onClick={openWindowHandler}>
<Editable onDoubleClick={enableInputHandler} />
</Card>
Run Code Online (Sandbox Code Playgroud)
有什么办法可以做到吗?
编辑:
对元素的单击<Editable />应该冒泡给父母,从而引起openWindowHandler呼叫。