【发布时间】:2019-08-13 10:07:08
【问题描述】:
假设我正在做一个简单的 CRUD 应用程序来响应。我的功能组件基本上就是表单。
- 在 CREATE 案例中,我通过 props 传入一个空对象
- 在 UPDATE 案例中,我通过 props 传入了一个带有值的对象(我通过 API 调用获取了父组件中的数据)
我看起来像这样:
const MyForm = (props) => {
const [myValues, setMyValues] = useState(props.myValues);
const [errors, setErrors] = useState(0);
(...)
}
在 UPDATE 情况下,我(当然)遇到了一个问题,即当组件安装时 props.myValues 仍然为空,并且在父组件的 api 调用完成时没有再次设置(更新),因此离开了表单值为空。
使用类组件,我会用 getDerivedStateFromProps() 解决这个问题。功能组件中有类似的东西吗?还是我从一开始就做错了?感谢您的建议!
【问题讨论】:
标签: javascript reactjs components state