目录
3.React中useCallback和useMemo的区别?
10.useEffect几种使用方式?项目中如何处理副作用的?
1.React中组件的性能优化有哪些?
- 使用shouldComponentUpdate或者React.memo进行组件的浅比较,以减少不必要的渲染。
- 将组件进行拆分,减少单个组件的复杂度。
- 懒加载组件,减少首屏渲染时间。
- 使用React提供的PureComponent或者使用函数组件代替类组件,以减少渲染时的开销。
- 使用key属性来帮助React识别哪些元素需要重新渲染。
2.React中常用hook有哪些?分别有什么作用?
- useState:管理组件的状态。
- useEffect:处理副作用,比如网络请求或者订阅事件。
- useContext:共享全局状态。
- useRef:获取DOM元素或者保存组件的引用。
- useMemo:缓存计算结果,避免不必要的重复计算。
- useCallback:缓存函数,避免不必要的重复创建。
3.React中useCallback和useMemo的区别?
useCallback和useMemo都可以用来缓存结果,本质上useCallback
是对useMemo
做了一层包装,作用都是通过判断依赖项是否改变来决定是否更新值。但useCallback返回的是一个函数,useMemo返回的是一个值。useMemo
一般通过减少不必要的复杂计算来优化性能,useCallback
一般用于给子组件传递回调函数时,减少子组件的渲染次数,从而优化性能。
4.React中什么是HOC?使用场景有哪些?
HOC(Higher-Order Component)是一个函数,接受一个组件作为参数,返回一个新的组件