# useEffect 摘抄


By [an7](https://paragraph.com/@myairdrop) · 2022-01-18

---

从字面意思上来看，useEffect 就是使用「影响」，这里的「影响」也可称之为「副作用」。与平时生活中说提到的「副作用」不同，这里的「副作用」是一个中型的词语，表示的并不是有「负面效果」的影响。在这里，对环境的改变即为副作用，比如修改`document.title`，但是不一定要把所有「副作用」都放在 useEffect 里。

React 会等待浏览器完成画面渲染之后才会延迟调用 useEffect，因此称实际上之为 "afterRender" 更为恰当。在类组件中，与 "afterRender" 对应的生命周期有`componentDidMount`、`componentDidUpdate`、`componentWillUnmount`。函数组件中没有生命周期钩子，而借助 useEffect，就可以在函数组件中实现上面这三种生命周期的效果。

---

*Originally published on [an7](https://paragraph.com/@myairdrop/useeffect)*
