Я работаю над формой реагирования с Formik, и у меня проблема с проверкой,
Я хочу, чтобы проверка отправлялась на Alert.alert(errorMessage)
, а не на такого текстового бота, как этот <Text>{errorMessage}</Text>
.
Это моя настоящая форма:
import { View, Text, StyleSheet } from "react-native";
import { Formik } from "formik";
import yup from "yup";
import SubmitButton from "../buttons/Submit";
import LoginInput from "../inputs/Login";
interface values {
email: string;
password: string;
}
interface props {
onSubmit: (string: values) => void;
validate: (values: values) => void;
isFetching: boolean;
}
const styles = StyleSheet.create({
container: {
marginTop: 39,
padding: 20,
justifyContent: "center",
alignItems: "center"
}
});
export default class AuthenticationForm extends Component<props, {}> {
render() {
const { onSubmit, validate, isFetching } = this.props;
return (
<View style={styles.container}>
<Formik
initialValues={{ email: "", password: "" }}
onSubmit={onSubmit}
validationSchema={yup.object().shape({
email: yup
.string()
.email()
.required(),
password: yup.string().required()
})}
>
{(props: any) => (
<View style={{ marginTop: 75 }}>
<LoginInput
autoCapitalize="none"
returnKeyType="done"
placeholder=""
value={props.values.email}
onChangeText={props.handleChange("email")}
secureTextEntry={false}
autoCorrect={false}
topText={"email :"}
errorMessage={props.errors.email}
/>
<LoginInput
returnKeyType="done"
autoCapitalize="none"
secureTextEntry
placeholder=""
autoCorrect={false}
value={props.values.password}
onChangeText={props.handleChange("password")}
topText={"password :"}
/>
<SubmitButton onPress={props.handleSubmit} loading={isFetching} />
</View>
)}
</Formik>
</View>
);
}
}
Если вам известна любая другая библиотека, которая позволяет выполнять проверку формы и которая совместима с Alert.alert, я готов.
Спасибо за помощь!