为什么禁止在 React 组件的构造函数中从 API 中获取数据

Why is it prohibited to fetch data from API in constructor of a React Component

我研究过这个问题,似乎在 React 组件的构造函数中获取数据可能会导致一些麻烦。谁能给我解释一下那些是什么样的麻烦。最好有例子。在构造函数中获取数据与在 componentDidMount 方法中获取数据有什么区别。

在React生命周期中,constructor方法在componentDidMount()之前调用,但是在componentDidMount()方法之后组件在DOM就绪。如果在构造函数中调用 API,将获取数据但 DOM 中不存在组件。因此,最好的方法是在 componentDidMount() 中使用 API,因为组件已准备好并放置在 DOM.