微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用Reactjs提交formData不起作用

如何解决用Reactjs提交formData不起作用

我试图使用formData()来使用Reactjs和Hooks提交登录表单,但是它不起作用。 从formData组件返回的值似乎是正确的。我已经尝试过使用Axios和Fetch进行操作,但都无法正常工作。 我还尝试了各种方法来填充formData元素,即使使用固定字符串也是如此,但是它们都不起作用。

我确定自己犯了一些天真的错误,但是我找不到。 你们中的一些可以帮我吗?

谢谢

import React,{useState} from 'react'
import axios from 'axios'

function useLoginForm() {
    const [field,setField] = useState({email: '',password: ''})

    const changeHandler = (event) => {
        setField({...field,[event.target.name]: event.target.value})
    }
    const onBlurHandler = (event) => {
        setField({...field,[event.target.name]: event.target.value});
    }
    const fileHandler = (event) => {
        console.log(event.target.files[0])
    }
    const submitHandler = async (event) => {
        event.preventDefault();

        for(let [name,value] of loginFormData) {
            console.log(`KEY: ${name} VALUE = ${value}`);// Logging outcome details
          }

        const url = 'https://my_url/post'
        }

        console.log(`Submit --> ${field.email} - Password ${field.password}`);

        try{
            const response = await axios.post(url,loginFormData,{
                headers: {
                    "Content-type": "multipart/form-data" /* ; boundary=${loginFormData._boundary}*/
                },}
            )
            console.log(response.data)
        }catch(error){
            console.log(error)
        }
      
    }
    return (
        <div>
            <p>{field.email} - {field.password}</p>
            <form id="loginForm" name="loginForm" onSubmit={submitHandler}>
                <label htmlFor="email">email</label>
                <input type="text" name="email" id="email" onChange={changeHandler} /* onBlur={onBlurHandler} */></input>
                <label htmlFor="password">Password</label>
                <input type="password" name="password" onChange={changeHandler} /* onBlur={onBlurHandler} */></input>
                <input type="submit" value="Login" />
            </form>
        </div>
    )
}

export default useLoginForm
Results:

KEY: email VALUE = xyz_xyz@VBM.com      useLoginForm.js:47
KEY: password VALUE = Xxxxxx            useLoginForm.js:47
Submit --> xyz_xyz@VBM.com - Password Xxxxxx    useLoginForm.js:57

XHRPOSThttps://my_url/post
[HTTP/1.1 404 Not Found 6681ms]

    1
    -----------------------------345147470230284216993885766804
    2
    Content-disposition: form-data; name="email"
    3
    4

    xyz_xyz@VBM.com

    5
    -----------------------------345147470230284216993885766804
    6
    Content-disposition: form-data; name="password"
    7
    8

    Xxxxxx

    9
    -----------------------------345147470230284216993885766804--
    10

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。