javascript - react 冒泡的一些问题
淡淡烟草味
淡淡烟草味 2017-05-19 10:18:56
[JavaScript讨论组]
   fn1(){
         alert('父级');
     }
     fn2(ev){
         ev.stopPropagation();
         ev.nativeEvent.stopImmediatePropagation();

         alert("子集");
     }
     componentDidMount(){
         document.onclick=function(){
             alert('document');
         };

         this.refs['fa'].onclick=function(ev){
             //console.log(this);
             console.log(ev.target);
             alert("爷爷");
         }
     }

<p ref="fa" className="fa">
     <p onClick={this.fn1.bind(this)}>
     <p onClick={this.fn2.bind(this)}>aaaaaaaaaaa</p>
</p>

只用e.stopPropagation()阻止父级事件冒泡fn1 事件不会触发,但是document的事件触发?
e.nativeEvent.stopPropagation() 阻止冒泡到docuemnt但是父级的fn1触发, 每次点击fa都会触发并且最先触发,拿不到e.target,只有捕获fn2 才会有结果 p aaa,那么问题来了 如何只触发外侧事件 不去捕获呢?react事件大概的事件机制是什么呢?求解谢谢·

淡淡烟草味
淡淡烟草味

全部回复(2)
PHP中文网

不是,这两个其实都是原生的方法。

stopImmediatePropagation和链接stopPropagation,至于nativeEvent应该是ReactNative独有的,React都应该没有这东西。

巴扎黑

https://zhuanlan.zhihu.com/p/...看完这个链接你就明白了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号