Javascript 如何在react组件中处理事件捕获?
请先阅读代码 经过css处理后,它看起来像是备忘录应用程序的一张备忘录纸 该组件的目标是在单击时打印1(实际上,目标是显示redux存储的状态) 当我在div组件外部单击时,它工作得非常好。(上面印着“1”) 但当我单击内部div组件(标题、日期、内容)时,onClick事件也在继续(它打印了“”) 如何防止无值打印 我的代码:Javascript 如何在react组件中处理事件捕获?,javascript,html,reactjs,Javascript,Html,Reactjs,请先阅读代码 经过css处理后,它看起来像是备忘录应用程序的一张备忘录纸 该组件的目标是在单击时打印1(实际上,目标是显示redux存储的状态) 当我在div组件外部单击时,它工作得非常好。(上面印着“1”) 但当我单击内部div组件(标题、日期、内容)时,onClick事件也在继续(它打印了“”) 如何防止无值打印 我的代码: 类容器扩展组件{ handleState=(事件)=>{ console.log(event.target.id) } render(){ 返回( 标题 日期 所容纳之
类容器扩展组件{
handleState=(事件)=>{
console.log(event.target.id)
}
render(){
返回(
标题
日期
所容纳之物
)
}
}
container.defaultprops={
价值:1
}
谢谢。您可以使用
currentTarget
检查它是否是目标,因为您已将处理程序绑定到父级,例如
handleState = (event) = > {
if (event.target == event.currentTarget) {
console.log(event.target.id)
}
}
您可以使用currentTarget
检查它是否是target
,因为您将处理程序绑定到父级,例如
handleState = (event) = > {
if (event.target == event.currentTarget) {
console.log(event.target.id)
}
}
您可以使用currentTarget:
handleState = (event) => {
console.log(event.currentTarget.id)
}
关于target和currentTarget之间的差异:
您可以使用currentTarget:
handleState = (event) => {
console.log(event.currentTarget.id)
}
关于target和currentTarget之间的差异:
检查if(event.target.id)
然后执行操作??是。它运行良好(打印“1”)。问题是,当我单击内部div部分(标题、日期、内容部分)时,onclick事件也会继续,并且没有值。所以它打印了“”。我想在div的任何部分打印相同的值。检查if(event.target.id)
,然后执行您的操作??是。它运行良好(打印“1”)。问题是,当我单击内部div部分(标题、日期、内容部分)时,onclick事件也会继续,并且没有值。所以它打印了“”。我想在div的任何部分打印相同的值。太棒了!我不知道它的存在:)太棒了!我不知道它的存在:)