在this Discuss thread中,Sophie Alpert说明了React中的事件处理:
我们不保证React事件和本机事件之间的事件排序。
然而,我很好奇是否可以安全地假设React"捕获"事件(例如onClickCapture
)将始终在任何本机非捕获事件之前触发。
例如,我可以假设点击MyComponent
中的React呈现div将始终记录"单击div"在记录之前"点击窗口"?
window.document.addEventListener('click', () => {
console.log('Clicked the window');
}
const MyComponent = () => (
<div onClickCapture={() => console.log('Clicked the div')}>
A Div
</div>
);