gpt4 book ai didi

使用 Yup 进行语义 ui react 表单验证

转载 作者:行者123 更新时间:2023-12-02 00:33:26 26 4
gpt4 key购买 nike

我读了这个solution但这并不能真正回答问题。我正在使用 formik 和 semantic-ui-react。是否可以将 Yup 与 semantic-ui-react 一起使用?如果是,有人可以举个例子吗?

最佳答案

是的,这是可能的,这是一种方法。将此代码粘贴到 codesandbox.io 中并安装依赖项,例如 formik yup 和 semantic-ui-react

import React from "react";
import { render } from "react-dom";
import { Formik, Field } from "formik";
import * as yup from "yup";
import { Button, Checkbox, Form } from "semantic-ui-react";

const styles = {
fontFamily: "sans-serif",
textAlign: "center"
};

const App = () => (
<>
<Formik
initialValues={{
firstname: "",
lastname: ""
}}
onSubmit={values => {
alert(JSON.stringify(values));
}}
validationSchema={yup.object().shape({
firstname: yup.string().required("This field is required"),
lastname: yup.string().required()
})}
render={({
values,
errors,
touched,
handleChange,
handleBlur,
handleSubmit
}) => {
return (
<Form>
<Form.Field>
<label>First Name</label>
<input
placeholder="First Name"
name="firstname"
onChange={handleChange}
onBlur={handleBlur}
/>
</Form.Field>
{touched.firstname && errors.firstname && (
<div> {errors.firstname}</div>
)}
<Form.Field>
<label>Last Name</label>
<input
placeholder="Last Name"
name="lastname"
onChange={handleChange}
onBlur={handleBlur}
/>
</Form.Field>
{touched.lastname && errors.lastname && (
<div> {errors.lastname}</div>
)}
<Form.Field>
<Checkbox label="I agree to the Terms and Conditions" />
</Form.Field>
<Button type="submit" onClick={handleSubmit}>
Submit
</Button>
</Form>
);
}}
/>
</>
);

render(<App />, document.getElementById("root"));

关于使用 Yup 进行语义 ui react 表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50824552/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com