Comment annuler le bouillonnement dans React : 1. Liez un événement click à l'élément dom et restituez le composant ; 2. Annulez le bouillonnement via "function change(e){e.nativeEvent.stopImmediatePropagation();}". .
L'environnement d'exploitation de ce tutoriel : système Windows 10, React version 18.0.0, ordinateur Dell G3.
Comment annuler le bullage en réaction ?
Annuler le bouillonnement dans React
Récemment, je faisais une petite démo de désinstallation de composants React et j'ai rencontré un petit problème, qui est le traitement des événements bouillonnants
Lorsque nous désinstallons des composants dans React, nous pouvons les désinstaller en effectuant un nouveau rendu
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 原生方法 }
Étude recommandée : "Tutoriel vidéo React"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!