react相关

TJF.

React 的事件合成机制

1
2
3
// 在react中所有元素的事件触发都会被收集以及事件委托的方式执行; 在react17之前的版本中,事件是统一通过document触发的,但是在react17+的版本中,则是通过root 元素触发的

// 合成事件: 在一事件被触发时, 经历事件捕获--》获取事件源--》 事件冒泡;冒泡到顶层元素 在这个过程中会收集此元素的所有的父元素的相关事件,构造出react的事件池(SynctheticEvent);在整个的执行过程中依次存入eventQueue中,然后在eventQueue中模拟捕获和冒泡阶段; 最后事件都要在document上使用eventDispatch触发

setState 是同步事件还是异步事件

1
//  根据使用isBatchUpdate来判断,此事件是先进入更新队列,还是同步更新,在react的生命周期以及合成事件中等则为true,比如在定时器及原生的事件监听中则是false;

react 中的事件通信

1
2
3
4
5
6
7
8
9
// 1. 父---》子 通信;  通过props 传递 (单向)

// 2. 子---》父 通信; 父组件传递一个函数,子组件调用触发,父组件获取回调函数的值;

// 3. 兄弟组件的通信; 使用eventEmitter; 或者使用共同父组件做中转;

// 4. 多层级的组件向下传递 使用上下文 context
const Price = React.createContext("price");
<Price.Provider value={100}></Price.Provider>;

高阶组件

1

Redux 的使用

1
//
  • 标题: react相关
  • 作者: TJF.
  • 创建于 : 2022-12-05 00:00:00
  • 更新于 : 2024-03-04 08:40:28
  • 链接: https://github.com/taowind/2022/12/05/react知识/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论