Текущая платформа: NodeJS (минимальная), React на стороне клиента с Redux, Formik, Yup.
Учитывая следующий пример кода (не включая весь код React Component, поскольку он не имеет отношения к вопросу):
class RegisterPage extends React.Component {
constructor(props) {
super(props);
}
// (...)
render () {
<Form>
<Field name="email" type="email" />
<Field name="password" type="password" />
<Field
name="myCheckbox"
type="checkbox"
checked={this.props.values.myCheckbox}
onChange={ ?????????? } />
</Form>
}
}
const handleFormSubmission = (values, { resetForm, setErrors, setSubmitting }) => {
console.log(values);
};
const handleFormChange = (event) => {
event.persist();
console.log('changed');
};
const MyFormik = withFormik({
mapPropsToValues ({ email, password, myCheckbox }) {
return {
email: email || '',
password: password || '',
myCheckbox: myCheckbox || false
}
},
validationSchema: (...Yup schema here...),
handleSubmit (values, bag) { return handleFormSubmission(values, bag); }
})(RegisterPage);
export default connect()(MyFormik);
... как я могу использовать метод handleChange ? Мне нужно сохранить исходный (тот, что от Formik) при добавлении кода, который обрабатывает это изменение флажок. Есть поведение некоторых компонентов, которое зависит от проверенного значения этого флажка.
Пожалуйста, обратите внимание, что я не передаю реквизит onChange по электронной почте или паролю, поскольку для них не требуется никакого дополнительного поведения. Этот флажок будет иметь особое поведение.