方法没有在 formik 反应中的 onChange 事件上被调用

method is not getting called on onChange event in formik react

我必须使用 formik

调用以下方法
   const handleChange = async (e:any, values: any) => {
        alert(e.target.value);
        alert(values);
        alert('Method called');
    };

下面是 formik 代码。

 <Formik initialValues={formInitialSchema}
                    validationSchema={formValidationSchema}
                    onSubmit={handleSubmit}>
                    <Form>
                       
                            <div className="col-md-4">
                                <label htmlFor="protoColNo">Protocol No</label>
                                <Field
                                    id="protoColNo"
                                    className="form-control"
                                    name="protoColNo"
                                    placeholder="Enter the Protocol No"
                                />
                                <p className="text-danger">
                                    <ErrorMessage name="protoColNo" />
                                </p>
                            </div>

                            <div className="col-md-4">
                                <label htmlFor="activerequests">Active Requests</label>
                                <select
                                name="activeRequest"
                                style={{ display: 'block' }}
                                onChange= {(e)=>handleChange}>
                                <option value="No"  >No </option>
                                <option value="Yes"  >Yes</option>
                                 <option value="All" selected>All </option>          
                            </select>

                                <p className="text-danger">
                                    <ErrorMessage name="activerequests" />
                                </p>
                            </div>
                        </div>
                    </Form>
                </Formik>
  

我有一份 input 和一份 drop down。一旦用户 change 下拉列表的值,我需要使用 input filed and list 的值调用 handleChange 方法。但是方法没有被调用。我不知道我做错了什么?

你能帮我做同样的事情吗?

onChange= {(e)=>handleChange(e)}> //you forgot to call the handleChange

onChange={handleChange}

您需要在 onChange 事件中调用匿名函数。

使用以下代码:

onChange= {(e)=>handleChange(e)}