Javascript React-React最终表单验证

Javascript React-React最终表单验证,javascript,reactjs,typescript,validation,react-final-form,Javascript,Reactjs,Typescript,Validation,React Final Form,我对使用记录级验证时的react最终表单错误消息有疑问。FormFilterFields组件中存在以下字段 字段名称: export const fieldNames = { password: "field.password" }; 字段: <Field name={fieldNames.password}> {({ input, meta }) => {

我对使用记录级验证时的react最终表单错误消息有疑问。FormFilterFields组件中存在以下字段

字段名称:

export const fieldNames = {
  password: "field.password"
};
字段:

            <Field name={fieldNames.password}>
                  {({ input, meta }) => {
                    return (
                      <div className={styles.textInputContainer}>
                        <TextInput
                          type={"password"}
                          label={"password"}
                          value={input.value}
                          onChange={(event)=> {
                            input.onChange(event)
                          }}
                          error={meta.error}
                        />
                      </div>
                    );
                  }}
                </Field>

{({input,meta})=>{
返回(
{
input.onChange(事件)
}}
error={meta.error}
/>
validationErrors.errors['field.password'] = "password is too short";
); }}
表格:

{}
initialValues={this.props.formValues}
装饰器={[FormFilterFieldDecorator]}
验证={values=>{
常量值对象:任意=值
const validationErrors={errors:{};
if(valuesObject&&valuesObject.field.password&&valuesObject.field.password.length<6){
validationErrors.errors.field.password=“密码太短”;//此处未定义errors.field.password
}
返回验证错误;
}}
渲染={({
手推,
提交,
崭新的
价值观
形式,
无效的
}) => (
this.props.onHandleSubmit(事件、值)}
onReset={event=>this.props.onHandleReset(事件,形式)}
/>
validationErrors.errors['field.password'] = "password is too short";
{JSON.stringify(值)} )} />
validationErrors.errors['field.password'] = "password is too short";
那么,您将如何设置字段名的错误消息,如下所示:

“字段。密码”

我已经看过一些例子,但没有骰子。另一种选择是现场级验证,这是我解决方案的最后手段

任何帮助都将不胜感激

谢谢你试过了吗

if (!values.field || !values.field.password) {
      errors.field = {password: 'Required'};
}
编辑 试试这个


是的,也没有骰子。可以根据您的沙盒代码在此处编辑沙盒和测试。