Ism*_*rov 18 javascript dom-events reactjs
onFocus我想知道 React events:和之间有什么区别onFocusCapture。我在 React 的文档页面上找不到合适的答案。
<OutlinedInput
label="price from"
onFocus={handlePriceFocus}
/>
<OutlinedInput
label="price to"
onFocusCapture={handlePriceFocus}
/>
Run Code Online (Sandbox Code Playgroud)
就我而言,它似乎onFocus具有onFocusCapture相同的功能,因为我在使用这两个事件时没有注意到任何差异。
Eze*_*ler 27
React 在他们的文档中是这么说的:
“下面的事件处理程序由冒泡阶段的事件触发。要为捕获阶段注册事件处理程序,请将 Capture 附加到事件名称;例如,不使用 onClick,而是使用 onClickCapture 来处理捕获阶段。” https://react.dev/learn/responding-to-events#capture-phase-events
所以,我想这件事已经不用再说了。我的理解是,如果没有“捕获”,代码会在事件之后执行,而如果有“捕获”,代码会在事件之前执行。