[英]React-Final-Form hidden field values
我正在從 Redux-forms 過渡到 react-final-forms,我無法弄清楚如何處理隱藏的表單值。 在 redux-forms 中,我可以執行類似this.props.change("createdBy", this.props.user.profile.username)
的操作來設置隱藏值,但該選項似乎不是 react-final 中的選項-forms(或者我錯過了它)。
我認為我可以使用在新 forms 上工作的 initialValues,但是如果我需要以初始形式添加其他值,我會遇到麻煩。 例如,
<Form
onSubmit={ this.onSubmit }
initialValues={
item
? item
: { createdBy: "Rachel", createdOn: new Date(), active: true }
}
render={({ handleSubmit, form, submitting, pristine, values }) => (
<form onSubmit={handleSubmit}>
...
項目可能看起來像:
{
code: "WTTC",
description: "Welcome to the Club",
active: true,
createdBy: "Rachel",
createdOn:"02/23/2021",
modifiedBy: null,
modifiedOn: null,
}
因此,如果我使用上述項目設置表單的 initialValue,我還想設置用於處理this.props.change("createdBy", this.props.user.profile.username)
的 modifiedBy 和 modifiedOn 值.
有什么建議么?
我根本不熟悉這個庫,但從 JS 的角度來看,您可以通過操作 object item
的初始值來實現它
initialValues={
item
? {...item,createdBy: this.props.user.profile.username, createdOn: new Date()}
: { createdBy: "Rachel", createdOn: new Date(), active: true }
}
<Field name="fieldName">
{({input}) => (
<div>
<div className="field-wrapper">
<input {...input} type="hidden" name="fieldName" value="1"/>
</div>
</div>
)}
</Field>
props.form.getFieldState('fieldName').change(value);
form 是最終形式的實例
<Form
onSubmit={onSubmit}
subscription={{ submitting: true }}
validate={validate}
initialValues={initValues}
render={({ handleSubmit, form, submitting, pristine, values }) => (
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.