reactjs - 处理具有许多字段的反应表单中的错误
问题描述
<Form.Input
label="Name"
type="text"
value={this.state.name}
onChange={this.handleChangeName}
/>
<Form.Input
label="Age"
type="number"
value={this.state.age}
onChange={this.handleChangeAge}
/>
<Form.Input
label="Gender"
type="text"
value={this.state.gender}
onChange={this.handleChangeGender}
/>
<Button
className="primaryButton"
onClick={this.onSave}
>
SAVE
</Button>
handleChangeAge=(e,{value})=>{
//Set the value to state if it is greater than 1 else show error message.
}
handleChangeGender=(e,{value})=>{
//I have some error handling here also
}
onSave=()=>{
//Highlight the fields with errors
}
我有一个如上所示的表单。我想根据某些条件验证表单的每个字段。如何处理每个字段的错误并在单击保存时显示它?
解决方案
我的建议是使用适当的包来为您处理这种验证。如果你结合Formik
你Yup
最终得到一个非常一致的形式。您可以创建出色的验证Yup
形式: https ://jaredpalmer.com/formik/docs/api/formik
是的:https ://github.com/jquense/yup
:)
推荐阅读
- jsf - 将数据表变量作为参数传递给复合 bean 方法
- purescript - 如何在 PureScript 中快速检查自定义 ADT?
- java - Spring拦截器在postHandle中添加数据
- nativescript - 在 RadListView 中,如何删除项目列之间的额外空间?
- aws-sdk - 在 aws SageMaker 容器中设置环境变量(带上您自己的容器)
- hilbert-curve - 如果希尔伯特曲线四叉树有效,为什么要转换为 S2 单元 ID?
- scala - Scala:将映射的java列表转换为scala映射
- python - 使用列表检查按钮状态(tkinter python)
- javascript - 排序时和排序后边距和对齐方式发生变化
- ballerina - Ballerina github4 api 中的“存储库”类型错误中不存在字段“许可证”