再不用addEventListener的情况下,React父组件如何拦截所有子组件的点击事件。
只使用类似
- onClkick
- onClickCapture
这样的事件能实现吗?
再不用addEventListener的情况下,React父组件如何拦截所有子组件的点击事件。
只使用类似
这样的事件能实现吗?
父组件可用通过React.Children获取所以子组件,通过React.cloneElement覆盖onClick事件达到拦截效果
{React.Children.map(children, (child) => React.cloneElement(child, { onClick: () => {} }))}
不满足还能对child深层递归
13 回答13k 阅读
8 回答2.8k 阅读
2 回答5.2k 阅读✓ 已解决
7 回答2.2k 阅读
5 回答1.4k 阅读
3 回答2.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
自己查查React.children.map clone的元素onClick={() => {props.click}} 试试?