Reactjs 覆盖redux表单中的初始值

Reactjs 覆盖redux表单中的初始值,reactjs,redux-form,Reactjs,Redux Form,我正在使用initialValues初始化字段中的值。尽管我想用另一个默认值覆盖其中一个字段。 这可能吗?我尝试使用defaultValue等,但我不工作。 这是我要更改的代码部分: <Field type="text" name={`${some}.url`} component={renderField} label="URL" defaultValue={some.url + ':' + some.port} /> 它是用url初始化的,但我想将它改为

我正在使用initialValues初始化字段中的值。尽管我想用另一个默认值覆盖其中一个字段。 这可能吗?我尝试使用defaultValue等,但我不工作。 这是我要更改的代码部分:

<Field
  type="text"
  name={`${some}.url`}
  component={renderField}
  label="URL"
  defaultValue={some.url + ':' + some.port}
/>


它是用url初始化的,但我想将它改为url:port

不确定生成或更新
url
port
变量的内容和方式。但像这样的事情应该行得通。如果你能分享更多细节,我可以修改答案

private url: string = `${some}.url`;
private port: string = `${some}.port`;

<Field
  type="text"
  name={this.url}
  component={renderField}
  label="URL"
  defaultValue={this.url + ':' + this.port}
  updateDefaultValue={(url, port) => {this.url = url; this.port = port}}
/>

希望这有助于不确定生成或更新
url
port
变量的内容和方式。但像这样的事情应该行得通。如果你能分享更多细节,我可以修改答案

private url: string = `${some}.url`;
private port: string = `${some}.port`;

<Field
  type="text"
  name={this.url}
  component={renderField}
  label="URL"
  defaultValue={this.url + ':' + this.port}
  updateDefaultValue={(url, port) => {this.url = url; this.port = port}}
/>

希望这有助于

在将
初始值
向下传递到
redux表单
组件之前,您可以修改它

类似的内容:

const mapStateToProps = state => ({
  // Here's how to set a default value and overwrite the API initial data.
  // Let's say your form is editing an User.
  // And if the User, returned by the API, doesn't have a name,
  // then we set a default value.
  initialValues: {...state.user, name: state.user.name || 'Default name'}
)}

// `connect` is part of `react-redux`.
// If you don't use `react-redux`, then just modify the `initialValues`
// before passing it down to the form.
export default connect(mapStateToProps)(reduxForm({
  form: 'formName',
})(Component))

在将
initialValues
prop下传给
redux表单
组件之前,您可以对其进行修改

类似的内容:

const mapStateToProps = state => ({
  // Here's how to set a default value and overwrite the API initial data.
  // Let's say your form is editing an User.
  // And if the User, returned by the API, doesn't have a name,
  // then we set a default value.
  initialValues: {...state.user, name: state.user.name || 'Default name'}
)}

// `connect` is part of `react-redux`.
// If you don't use `react-redux`, then just modify the `initialValues`
// before passing it down to the form.
export default connect(mapStateToProps)(reduxForm({
  form: 'formName',
})(Component))

你能在将值传递到表单之前修改它吗?使用回调,你可以更新它们,这样你的道具就更新了。值来自API调用,所以我不确定我能不能更新它们@有两个例子吗?我看不出使用回调的理由。只需修改
初始值
,然后再将其传递到表单,正如@HarshaVenkatram已经建议的那样。我提供了一个。你能在将值传递给表单之前修改它吗?使用回调,你可以更新它们,这样你的道具就更新了。值来自API调用,所以我不确定我能更新它们@有两个例子吗?我看不出使用回调的理由。只需修改
初始值
,然后再将其传递到表单,正如@HarshaVenkatram已经建议的那样。我已经提供了一个。也感谢@Harsha Venkatram!:)也要感谢@Harsha Venkatram!:)