Cara membatalkan menggelegak dalam React: 1. Ikat acara klik pada elemen DOM dan paparkan semula komponen 2. Gunakan "function change(e){e.nativeEvent.stopImmediatePropagation();} " kaedah Hanya batalkan gelembung.
Persekitaran pengendalian tutorial ini: Sistem Windows 10, bertindak balas versi 18.0.0, komputer Dell G3.
Bagaimana untuk membatalkan gelembung sebagai tindak balas?
Batalkan gelembung dalam tindak balas
Baru-baru ini saya sedang melakukan demo kecil untuk menyahpasang komponen tindak balas dan menghadapi masalah kecil, iaitu pemprosesan peristiwa menggelegak
Kami sedang bertindak balas Mematikan komponen boleh dinyahpasang dengan memaparkan semula
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 原生方法 }
Pembelajaran yang disyorkan: "tutorial video bertindak balas"
Atas ialah kandungan terperinci Bagaimana untuk membatalkan gelembung sebagai tindak balas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!