当前位置: 首页 > 面试题库 >

为什么React文档建议在componentDidMount中而不是componentWillMount中进行AJAX?

向泽语
2023-03-14
问题内容

标题说明了一切。我知道为什么componentDidMount它适用于需要DOM访问的任何内容,但是AJAX请求不一定或通常都需要这样做。

是什么赋予了?


问题答案:

componentDidMount用于副作用。添加事件侦听器,AJAX,更改DOM等。

componentWillMount很少有用;特别是如果您关心服务器端渲染(添加事件侦听器会导致错误和泄漏,以及许多其他可能出错的东西)。

讨论componentWillMount从类组件中删除组件是因为它的作用与构造器相同。它将保留在createClass组件上。



 类似资料:
  • 问题内容: 这是异步请求的数据作出反应的文档显示的页面应该在消耗事件,而初始化状态对象为默认 空 状态。 有什么理由吗?也许不希望getInitialState这样做或有其他目的?是由于库的某些内部逻辑引起的吗? 主持人和回答者注意:这不是基于意见的问题:如果存在原因,那将是答案,但是,对我的问题的一个正确的正确答案也可能是:“不,没有任何特定的理由,做任何你觉得更好的事情” 问题答案: 应该是道

  • 问题内容: 我在(React.Component)上查看了Facebook的文档,其中提到了如何在客户端/服务器上调用而仅在客户端上调用。这是什么做的服务器? 问题答案: componentWillMount本质上是构造函数。您可以设置不影响渲染的实例属性, 同步 从存储中提取数据并使用setState 设置实例属性,以及设置组件时需要运行的其他简单的无副作用的代码。 它很少需要,ES6类根本不需

  • 我看了Facebook的留档(React.Component),它提到了如何在客户端/服务器上调用,而仅在客户端上调用。对服务器做什么?

  • 问题内容: 我正在阅读反应生命周期,并感到有些困惑。一些建议使用componentWillMount进行ajax调用: https://hashnode.com/post/why-is-it-a-bad-idea-to-call-setstate-immediately- after-componentdidmount-in-react- cim5vz8kn01flek53aqa22mby 在co

  • 我是React新手,我正在使用最新版本的React学习React组件生命周期。我对下面部分代码的“super”调用被标记为不推荐使用的警告。我很难理解这一点,因为很多文档仍然使用“super”,而且我不确定后续版本是什么,即使是从反馈中链接的完整文章中。有什么想法吗?谢谢 警告如下:

  • 我正在阅读react lifecycle,有点困惑。有些人建议使用componentWillMount进行ajax调用: https://hashnode.com/post/why-is-it-a-bad-idea-to-call-setstate-immediately-after-componentdidmount-in-react-cim5vz8kn01flek53aqa22mby 在com