反应选择验证错误消息在formik和yup中不删除AFETER CONT值
我正在使用React-Select选择多个选项。我使用formik和yup
进行验证。所有事情都可以正常工作,但是当我选择一个选项时,错误消息
不会消失。 我该如何处理?
这是验证:
const [initialValues, setIntialValues] = useState({.......,productLine: "",...});
const validationSchema = Yup.object().shape({
..............,
productLine: Yup.string().required("This field is required"),
.............
})
const [selectedPrduct, setSelectedProduct] = useState("");
const handleProductChange = selectedPro => {
setSelectedProduct(selectedPro);
};
和我的形式:
<Formik
initialValues={initialValues}
validationSchema={validationSchema}
onSubmit={(values) => onSubmit(values)}
enableReinitialize={true}
>
{({ errors, values, touched, setValues }) => (
<Form className="w-full px-3 py-10 space-y-8 divide-y divide-gray-200 text-justify ">
..............
<Select
value={selectedPrduct}
styles={{
input: (base) => ({
...base,
'input:focus': {
boxShadow: 'none',
},
}),
}}
onChange={selectedOption => {
handleProductChange(selectedOption);
}}
isSearchable={true}
options={productLine}
name="productLine"
/>
<button
type="submit"
className="ml-3 inline-flex w-2/4 md:w-20 lg:w-20 justify-center py-2 px-4 border border-transparent shadow-sm text-sm font-medium rounded-md bg-magento text-alabaster"
>
Save
</button>
</Form>
)}
</Formik>
I am using react-select to select multiple options. I used Formik and Yup
for validation. all things work correctly, but the error message
does not disappear when I select an option.
how can I handle this?
This is validation:
const [initialValues, setIntialValues] = useState({.......,productLine: "",...});
const validationSchema = Yup.object().shape({
..............,
productLine: Yup.string().required("This field is required"),
.............
})
const [selectedPrduct, setSelectedProduct] = useState("");
const handleProductChange = selectedPro => {
setSelectedProduct(selectedPro);
};
and my form:
<Formik
initialValues={initialValues}
validationSchema={validationSchema}
onSubmit={(values) => onSubmit(values)}
enableReinitialize={true}
>
{({ errors, values, touched, setValues }) => (
<Form className="w-full px-3 py-10 space-y-8 divide-y divide-gray-200 text-justify ">
..............
<Select
value={selectedPrduct}
styles={{
input: (base) => ({
...base,
'input:focus': {
boxShadow: 'none',
},
}),
}}
onChange={selectedOption => {
handleProductChange(selectedOption);
}}
isSearchable={true}
options={productLine}
name="productLine"
/>
<button
type="submit"
className="ml-3 inline-flex w-2/4 md:w-20 lg:w-20 justify-center py-2 px-4 border border-transparent shadow-sm text-sm font-medium rounded-md bg-magento text-alabaster"
>
Save
</button>
</Form>
)}
</Formik>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论