反应本机博览会 api 发布问题

时间:2021-03-17 12:30:26

标签: reactjs react-native fetch expo

网络请求失败 在 node_modules/whatwg-fetch/dist/fetch.umd.js:535:17 在 setTimeout$argument_0 at [native code]:null in callFunctionReturnFlushedQueue

const [email, setEmail] = React.useState('')
const [pass, setPass] = React.useState('')
const [login, setLogin] = React.useState({
  email1: 'bilal',
  pass1: 'hadid',
})
const [respData, setRespData] = React.useState()
const [respStatus, setRespStatus] = React.useState()
console.log(email, pass)
React.useEffect(() => {
 let formData = new FormData()
 formData.append('username', 'bilal@gmail.com')
 formData.append('password', 'hadid')
 fetch('https://aic-developments.xyz/v1/login_user.php', {
   method: 'POST',
   body: formData,
  })
  .then((resp) => resp.json())
  .then((respJSon) => {
    console.log(login)
    console.log(respJSon)
    setRespData(respJSon.messege)
    setRespStatus(respJSon.status)
  })
  .catch((err) => {
    console.log(err)
  })
})


[1]: https://i.stack.imgur.com/NEMpo.png
[enter image description here][1]

1 个答案:

答案 0 :(得分:0)

我不知道这是否是导致问题的原因,但您的代码有问题。您编写 useEffect 的方式将导致无限循环。阅读 useEffect 依赖项数组并尝试这个:

const [email, setEmail] = React.useState('')
const [pass, setPass] = React.useState('')
const [login, setLogin] = React.useState({
  email1: 'bilal',
  pass1: 'hadid',
})
const [respData, setRespData] = React.useState()
const [respStatus, setRespStatus] = React.useState()
console.log(email, pass)
React.useEffect(() => {
 let formData = new FormData()
 formData.append('username', 'bilal@gmail.com')
 formData.append('password', 'hadid')
 fetch('https://aic-developments.xyz/v1/login_user.php', {
   method: 'POST',
   body: formData,
  })
  .then((resp) => resp.json())
  .then((respJSon) => {
    console.log(login)
    console.log(respJSon)
    setRespData(respJSon.messege)
    setRespStatus(respJSon.status)
  })
  .catch((err) => {
    console.log(err)
  })
},[])