当前位置: 首页 > news >正文

wordpress 导航站模板网时代教育培训机构官网

wordpress 导航站模板,网时代教育培训机构官网,在人才网站做业务,开发公司与物业公司的交接手续react自身实现了一套自己的事件机制,包括事件注册、事件的合成、事件冒泡、事件派发等,虽然和原生的是两码事,但也是基于浏览器的事件机制下完成的。 react 的所有事件并没有绑定到具体的dom节点上而是绑定在了document 上,然后由…

react自身实现了一套自己的事件机制,包括事件注册、事件的合成、事件冒泡、事件派发等,虽然和原生的是两码事,但也是基于浏览器的事件机制下完成的。

react 的所有事件并没有绑定到具体的dom节点上而是绑定在了document 上,然后由统一的事件处理程序来处理,同时也是基于浏览器的事件机制(冒泡),所有节点的事件都会在 document 上触发。

React事件与原生事件的执行顺序又是如何?

代码示例

import React from 'react';
class App extends React。Component {constructor(props) {super(props);this.parentRef = React.createRef();this.childRef  = React.createRef();}componentDidMount() {console.log('react componentDidMount');this.parentRef.current?.addEventListener('click', () => {console.log('父元素:原生事件 父元素 DOM 事件监听');});this.childRef.current?.addEventListener('click', () => {console.log('子元素:原生事件 子元素 DOM 事件监听');});document.addEnvetListener('click', e => {console.log('document:原生document DOM 事件监听');});}parentClickFun = () => {console.log('React:父元素事件监听'); };childClickFun = () => {console.log('React:子元素事件监听'); }render() {return (<div ref={this.parentRef} onClick={this.parentClickFun}><div ref={this.childRef} onClick={this.childClickFun}>事件执行</div></div>);}
}

输出:

子元素:原生事件 子元素 DOM 事件监听

父元素:原生事件 父元素 DOM 事件监听

React:子元素事件监听

React:父元素事件监听

document:原生document DOM 事件监听

 事件执行顺序:

1、先执行 子元素的DOM事件

2、执行 父元素的DOM事件

3、执行 React  子元素的事件

4、执行 React 父元素的事件

5、 最后执行 document上的DOM事件的监听

由上总结:

1、React 中所有事件都挂载在document对象上

2、先触发真是DOM事件,再触发React事件

3、最后执行document 上挂载的事件

如何阻止冒泡行为?

1、阻止合成事件的冒泡, e.stopPropagation();

2、阻止合成事件与最外层document 上的事件的冒泡:e.nativeEvent.stop

3、阻止合成事件与原生事件的冒泡:

document.body.addEventListener('click', e => {if (e.target && e.target.matches('div.code')) {return;}this.setState({active: false});
});

总结

React 最终会绑定在document这个DOM上

React有一套自己的合成事件机制

http://www.yidumall.com/news/99398.html

相关文章:

  • 建设银行哈尔滨分行网站百度广告搜索引擎
  • 菠菜网站模板我们seo
  • 网站权重不够高 导致学做电商需要多少钱
  • 做网站 附加信息关键词排名靠前
  • 工业设计专业世界排名seo关键词优化推广外包
  • c2c网站建设费用seo属于运营还是技术
  • 请人做阿里巴巴网站需要注意无锡百度关键词优化
  • dw制作简单网页整站seo排名外包
  • 用织梦做网站都需要用什么十堰seo
  • 哪些品牌网站做的好龙岗网络公司
  • 做网站一般费用多少昆明seo网站建设
  • 外文网站设计正规微商免费推广软件
  • 加强门户网站建设提升百度关键词怎么刷上去
  • 时时彩网站怎么建设软件开发app制作
  • php做网站好吗最近三天的新闻大事摘抄
  • wordpress优化加速seo网站推广如何做
  • 网站排名优化是怎么做的什么优化
  • 网站制作价格报表产品网站推广
  • 怎么制作网站主题搜索引擎关键词优化
  • 网站建设公司伟置如何点击优化神马关键词排名
  • 湘潭网站湖南竞价优化哪家好
  • wordpress 怎样写函数页面优化
  • 深圳做网站排名公司哪家好新媒体营销成功案例
  • 可以提供排版的网站哈尔滨关键词优化方式
  • 厦门网站建设官网软文兼职10元一篇
  • 潍坊大型网站建设平台泰安seo推广
  • 统计网站的代码怎么做百度推广的代理
  • wordpress恢复备份数据库福建seo排名培训
  • 亦庄网站设计百度一下你就知道首页
  • 吉安高端网站建设公司海外自媒体推广