Reactjs 当道具从父道具更改时更新受控组件
我有一个问题,关于用来自其父级的道具来更新受控输入的最佳实践是什么 我有一个包含大量受控输入的组件输入区。在每个输入的构造中,我都有一个使用来自父级的props(值)初始化的状态。但在我的第一次输入中,我有一个自动建议组件,它填充所有输入的每个值(名字、姓氏、日期、电子邮件、电话等)。 因此,我的第一个组件触发一个动作,设置InputArea的新状态,所有值都从autosuggest提交。 所以,我所有的输入都被重新呈现,但没有任何改变(好的,我得到了这个,我们不调用构造函数,所以输入的状态没有改变) 所以,我试着用prevProps在componentDidUpdate中实现这一点(但eslint说我是一个比较松散的人)。好的,我试着用key={value}为我的输入设置一个键props。它可以工作,但不好,它卸载并装载我的输入。我看到了派生状态或memonized,但对于一个如此简单的特性来说似乎有点“困难和危险” 我希望在6个月内不要更改它,这样我就不会使用componentWillUpdate或其他不安全的东西。因为我喜欢最佳实践,我在网上搜索了很多,但我不太确定我应该做什么 有人有主意吗Reactjs 当道具从父道具更改时更新受控组件,reactjs,Reactjs,我有一个问题,关于用来自其父级的道具来更新受控输入的最佳实践是什么 我有一个包含大量受控输入的组件输入区。在每个输入的构造中,我都有一个使用来自父级的props(值)初始化的状态。但在我的第一次输入中,我有一个自动建议组件,它填充所有输入的每个值(名字、姓氏、日期、电子邮件、电话等)。 因此,我的第一个组件触发一个动作,设置InputArea的新状态,所有值都从autosuggest提交。 所以,我所有的输入都被重新呈现,但没有任何改变(好的,我得到了这个,我们不调用构造函数,所以输入的状态没有
谢谢大家=D检查
this.props.myProp!==prevProps.myProp
在componentdiddupdate
中,并根据需要更新您的状态。这将导致额外的重新渲染,但在大多数情况下都可以。是的,我看到react说,如果我们立即使用条件调用它,这并不坏,但我看到getDerivatedStateFromProps仅针对此类问题执行。。。那么,为什么不使用它呢?它写的是“不安全”或“你不需要”,但是嘿,facebook,你失去了我xDgetDerivedStateFromProps
在每次渲染时都会被调用,你无法检查你真正感兴趣的道具是否发生了更改,就像你可以使用componentDidUpdate
一样。好的,谢谢!我将使用它=DIt检查this.props.myProp!==prevProps.myProp
在componentdiddupdate
中,并根据需要更新您的状态。这将导致额外的重新渲染,但在大多数情况下都可以。是的,我看到react说,如果我们立即使用条件调用它,这并不坏,但我看到getDerivatedStateFromProps仅针对此类问题执行。。。那么,为什么不使用它呢?它写的是“不安全”或“你不需要”,但是嘿,facebook,你失去了我xDgetDerivedStateFromProps
在每次渲染时都会被调用,你无法检查你真正感兴趣的道具是否发生了更改,就像你可以使用componentDidUpdate
一样。好的,谢谢!我将使用它=D