我目前正在学习ReactJS
,我已经看到并阅读了您应该使用componentDidMount
和componentDidUpdate
但是我不明白当副作用连接到视图时,为什么要使用它。
例如,我在登录页面中有一个提交按钮,我应该何时向 api 发送登录数据? 在 componentDidMount
? 或 onSubmitHandler
?
您应该在onSubmitHandler
中调用您的 api,并根据您的用例调用它。
至于componentDidMount
,它通常用于调用挂载组件时所需的那些方法。
您可以在此处阅读有关生命周期方法的信息
我不确定有人告诉你"你应该使用componentDidMount
"的上下文,但你的提交按钮应该调用你定义的函数,如" onSubmitHandler
"。
componentDidMount
和componentDidUpdate
称为生命周期方法,在决定是否应使用它们以及应将它们用于什么用途之前,您应该阅读它们。
如其他答案所述,它完全取决于用例,您可以在 componentDidMount 或 onSubmitHandler
中调用您的 API。
一些常见的用例:
- 当我想在视图渲染后调用 API 时,我将使用
ComponentDidMount
来简单地调用 API。我不会等待用户的任何点击事件。
如果有人告诉你"你应该使用componentDidMount",那么他们可能正在谈论这个用例。为什么要在 ComponentDidMount 中调用 API
- 如果我的页面上有一个提交按钮,并且我想在有人单击该按钮时调用API,那么我将使用onClick事件。在这种情况下,我无法在ComponentDidMount中调用API
有一篇关于生命周期的很棒的文章 React 16 生命周期方法:如何以及何时使用它们