如何使用react-formik上传图像

问题描述

index.js

  const validationSchema = Yup.object({
    product_name: Yup.string().required('Product Name is required'),review: Yup.string().required('Review is required'),category: Yup.string().required('Category is required')
    
  });

 const formik = useFormik({
    initialValues: rekko,onSubmit: handleSubmit,validationSchema: validationSchema
});

 const handleSubmit = async (values,onSubmitProps) => {
    // e.preventDefault();
    console.log(values)
    const formData = new FormData();
    for (const file of values.product_img) {
        formData.append('product_img',file)
    }
    formData.append('product_img',values.product_img)
    console.log(formData)
    await Axios.post(`http://localhost:3001/add-recommendation`,formData,{
        headers: headers
    })
        .then(res => {
            toast.success('Item Added Successfully!',{
                position: "top-right",hideProgressBar: false,cloSEOnClick: true,pauSEOnHover: true,});
        })
        .catch(err => {
            toast.error('Item not Added',});
        })
    setTimeout(function () {
        history.push('/')
    },1500);
  };
<form onSubmit={formik.handleSubmit}>
<div className="form-group">
                <label htmlFor='product_img'>Product Image:</label> <br />
                <input type="file" multiple name="product_img" id="product_img" } onChange={formik.handleChange} onBlur={formik.handleBlur} />
 </div>
 </form>
 <button type="submit" className="btn btn-success" > Add Rekko </button>

我是新来的反应者,我使用formik表单工作正常,但是图像上传不起作用。它给出了错误并且图像没有上传错误“未定义是不可迭代的(无法读取属性Symbol(Symbol.iterator)属性)”。任何帮助都会被申请

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)