Effect这些细节你必须得掌握
useEffect这些细节你必须得掌握
1、React-Hooks 里面useEffect钩子相当于react class里面哪几个生命周期?
相当于componentDidMount,componentDidUpdate 和 componentWillUnmount 这三个函数的组合。
2、Effect 会在每次渲染后都执行吗?
是的,默认情况下,它在第一次渲染之后和每次更新之后都会执行。React 保证了每次运行 effect 的同时,DOM 都已经更新完毕。
3、React 何时清除 effect?
React 会在组件卸载的时候执行清除操作。正如之前学到的,effect 在每次渲染的时候都会执行。这就是为什么 React 会在执行当前 effect 之前对上一个 effect 进行清除。
4、React 可以使用多个 useEffect吗?
可以,可以将不同的业务不同点单独写一个,执行顺序也是从上到下逐个执行
5、如何让useEffect只执行一次。
第二个参数使用空数组即可
6、如何让useEffect每次都执行?
不要第二个参数
7、如何让useEffect想什么时候执行就什么时候执行?
第二个参数使用变量来控制,想执行时候,将变量变成和上一个值不同即可。
评论