我正在使用
我尝试更改从 开始的内容。
React
和 Formik
库构建简单的表单。
我在 form
标签中添加了一个复选框,该标签被 formik
库的 withFormik
包装器包含。我尝试更改从 开始的内容。
<input
type="checkbox"
name="flag"
checked={values.flag}
onChange={handleChange}
onBlur={handleBlur}
/>
到
<input
type="checkbox"
name="flag"
value={values.flag}
onChange={handleChange}
onBlur={handleBlur}
/>
但是没有一个有效的。
组件如下:
import { withFormik } from 'formik';
...
const Form = props => (
<form>
<input
type="checkbox"
name="flag"
checked={props.values.flag}
onChange={props.handleChange}
onBlur={props.handleBlur}
/>
<input
type="text"
name="name"
checked={props.values.name}
onChange={props.handleChange}
onBlur={props.handleBlur}
/>
</form>
);
const WrappedForm = withFormik({
displayName: 'BasicForm',
})(Form);
export default WrappedForm;
当单击复选框时,它应该更改props.values。但是它根本不会更改props数据。
顺便说一句,当在文本输入框中输入时,它会更改props数据。这只发生在复选框
中。
input
元素。 问题就出在那里。 @jagsler感谢您的时间。 - Derek Jin