如何以 redux 形式使用初始化

Posted

技术标签:

【中文标题】如何以 redux 形式使用初始化【英文标题】:How to use initialize in redux form 【发布时间】:2021-07-22 10:35:51 【问题描述】:

initialze 操作中,我们传递了一个对象,该对象告诉格式名称和初始值。但是它如何理解哪个值将是哪个Field

如果我在 redux 表单中有 5 个字段并且只想初始化 2 个字段。那么initialze 操作将如何理解为哪个字段提供了初始值。

https://redux-form.com/8.2.2/docs/api/props.md/#-code-initialize-data-object-function-code-

【问题讨论】:

请记住,如果你刚刚学习 Redux,一般不建议(多年来)将表单保留在 Redux 中,甚至 redux-form 在其首页有一条消息文档建议使用另一个不使用 Redux 的库。如果您现在正在学习显示 redux-form 的 Redux 教程,那么它已经过时了。有关最新的 Redux 教程,请参阅redux.js.org/tutorials/essentials/part-1-overview-concepts的官方文档 【参考方案1】:

initialze 操作中,我们传递了一个告诉格式名称的对象 和初始值。它如何理解哪个值将是 Field.

具有初始值的对象将(应该)具有与字段输入 name 属性匹配的键。

例子:

<Field
  autoComplete="email"
  component=RenderTextField
  id="login-email"
  label=formatMessage(strings.loginUsername)
  name="email"
  type="text"
/>

如果表单使用initialize('login', email: state.emailAddress ); 进行初始化,它将匹配/分配state.emailAddress 与匹配name 属性的输入值,在这种情况下为email

【讨论】:

以上是关于如何以 redux 形式使用初始化的主要内容,如果未能解决你的问题,请参考以下文章

在 redux 形式的文本字段中设置初始值

React/Redux - 在应用程序加载/初始化时调度操作

在redux中按下重置按钮时如何初始化所有状态

我应该如何将“redux-thunk”用于异步初始状态? (反应/减少)

Redux 形式:在更改或焦点事件后调用 REGISTER_FIELD / UNREGISTER_FIELD

我们如何在 useState 中使用 redux state 来设置初始值