React에서 버블링을 취소하는 방법: 1. dom 요소에 클릭 이벤트를 바인딩하고 구성 요소를 다시 렌더링합니다. 2. "functionchange(e){e.nativeEvent.stopImmediatePropagation();}"을 통해 버블링을 취소할 수 있습니다. .
이 튜토리얼의 운영 환경: Windows 10 시스템, 반응 버전 18.0.0, Dell G3 컴퓨터.
리액션에서 버블링을 취소하는 방법은 무엇인가요?
React에서 버블링 취소
최근에 React 구성 요소를 제거하는 작은 데모를 하다가 버블링 이벤트 처리에 관한 작은 문제에 직면했습니다.
React에서 구성 요소를 제거할 때 다시 렌더링하여 제거할 수 있습니다.
ReactDOM.render(<App />,document.getElementById('root')) // 给dom 元素绑定一个单击事件 重新渲染组件 就会把之前的 App组件 卸载了 document.onclick=function(){ ReactDOM.render(<div>Hello React.js</div>,document.getElementById('root')) } // 这样虽然实现了 但是出现了新的问题 因为给document 绑定的单击事件 导致 冒泡事件发生了 // 然后就开始尝试各中 取消冒泡的方式 在组件中 e.stopPropagation() e.cancelBuble=true; // 上面我知道的俩种方式都不可以 后来去网上搜索了一下 终于找到 藏得很深的取消冒泡的方法 function change(e){ // 注意 在 react的事件对象中 是由react组件 给封装了一下 e.nativeEvent.stopImmediatePropagation(); // 这个方法就可以做到了 nativeEvent 原生方法 }
추천 학습: "react 비디오 튜토리얼"
위 내용은 반응에서 버블링을 취소하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!