Reactjs 以redux形式设置enableReinitialize的含义
我有一个应用程序,它是一个多步骤向导,其中我有一个更高阶的组件,用于创建流程中的每个表单,目前我为每个表单组件设置了以下选项:Reactjs 以redux形式设置enableReinitialize的含义,reactjs,redux,redux-form,Reactjs,Redux,Redux Form,我有一个应用程序,它是一个多步骤向导,其中我有一个更高阶的组件,用于创建流程中的每个表单,目前我为每个表单组件设置了以下选项: { form: formName, validate: validate, destroyOnUnmount: false, keepDirtyOnReinitialize: true, forceUnregisterOnUnmount: true } 我目前没有设置enableReinitialize,因此它默认为false 每次用户进入下一步时
{
form: formName,
validate: validate,
destroyOnUnmount: false,
keepDirtyOnReinitialize: true,
forceUnregisterOnUnmount: true
}
我目前没有设置enableReinitialize
,因此它默认为false
每次用户进入下一步时,我都会更新redux状态
这在向导场景中是一个问题,因为如果用户单击“上一步”,然后再次单击“下一步”,则会丢失一些状态,因为在该特定步骤中,字段被设置回初始值
将启用重新初始化
设置为true会对性能产生什么影响?它是在每次状态更改时重置还是仅在每次加载组件时重置?redux表单为向导表单提供了非常有用的指南。您要查找的不是enableReinitialize
,而是要destroyOnUnmount
到false
我认为这些文档非常简单。redux表单为向导表单提供了非常有用的指南。您要查找的不是enableReinitialize
,而是要destroyOnUnmount
到false
我认为这些文档非常直截了当。在Redux表单上使用此向导来保留字段值
const formWrapped = reduxForm({
form: 'yourFormName',
destroyOnUnmount: false, // <------ preserve form data
forceUnregisterOnUnmount: true
})(YourComponentName);
const formWrapped=reduxForm({
表格:“yourFormName”,
destroyOnUnmount:false,//在Redux表单上的向导上使用此选项以保留字段值
const formWrapped = reduxForm({
form: 'yourFormName',
destroyOnUnmount: false, // <------ preserve form data
forceUnregisterOnUnmount: true
})(YourComponentName);
const formWrapped=reduxForm({
表格:“yourFormName”,
destroyOnUnmount:false,//是的,但是如果单击“上一步”而不更新全局状态,则字段将丢失其值我希望将状态保持为redux固定状态,直到其有效,然后再更新为什么会发生这种情况?redux表单
是管理表单状态的表单,除非已销毁(如果destroonunmount
设置为false
,而不是true
刚刚在我的回答中编辑了该选项,则可以阻止该操作)它们不应该丢失。我有destroonunmount=false
。也许我根本不应该使用初始值。你不应该:)initialValues
就是为了这个目的,初始化表单并设置“原始”值。向导表单应该像文档示例一样工作。如果您也可以向问题中添加一些代码,看看如果您仍然无法解决问题会发生什么。是的,但是如果您单击“上一步”而不更新glo,则字段将丢失其值bal状态我想将状态保持在redux固定状态,直到它有效,然后更新为什么会发生这种情况?redux表单
是管理表单状态的表单,除非被销毁(这是通过DestroyUnmount
设置为false
,而不是true
在我的回答中刚刚编辑过)它们不应该丢失。我有destroonunmount=false
。也许我根本不应该使用初始值。你不应该:)initialValues
正是为了实现这一点,初始化表单并设置“原始”值。向导表单的工作方式应与文档示例一样。如果您也可以向问题添加一些代码,请查看如果您仍然无法解决问题会发生什么,这可能会有所帮助。