javascript - React/Redux/Thunk 表单数据流
问题描述
在几个视频课程之后,我对如何使用 React/Redux 和 Thunk 管理表单上的数据感到困惑。
我希望表单上的所有数据都是本地数据,并在按下“保存”按钮时写入存储。所以我没有使用任何 Formik 或任何类似的库。
据我了解,所有数据都应该来自 reducer,因此我的 reducer 将初始空对象发送到mapStateToProps
. 现在什么时候应该将数据从 props 传递到组件的本地状态?
我之前需要这样做,componentDidMount
因为我的输入绑定到状态中的数据对象。构造函数也不是一个好地方。
我可以直接做:
state = {
data: this.props.data,
};
或者更确切地说?:
state = {
data: {...this.props.data}
};
当它是一个编辑表单时,我在 中调用一个 API,我componendDidMount
如何从 API 刷新表单上的数据?这个对吗?:
componentDidUpdate() {
if (this.props.data && this.state.data !== this.props.data) {
this.setState({ data: this.props.data });
}
}
谢谢你的澄清
解决方案
推荐阅读
- powershell - 运行PowerShell进程时如何阻止Windows 10机器休眠/休眠?
- javascript - 同一页面中有多个 p5.js 画布
- swift - 强密码建议停止在 iOS14 中注册?
- reactjs - React.js - Material-ui DataGrid 禁用行宽
- python - 基于 Django Rest Framework 中权限的不同查询集
- reactjs - 使用 saga debounce 时取消上一个请求
- github - 我无法推送到“主”默认分支
- javascript - 分页有效,但不会在重新加载时重新附加 javascript / css 类
- c - 试图制作一个计算字母但不计算空格的循环
- python - 逐行读取文本文件并仅使用 read() 将其转换为列表?