[我想一直通过更改组名来使用useEffect

问题描述 投票:0回答:1
useEffect(() => {
  Axios.get(`https://taskcontrolapp.herokuapp.com/taskcontrol/grupo/${props.id}`)
    .then(response => {
      setGrupo(response.data)
    }).catch(error => {
      console.log(error)
    })
}, [])

我有一个对象Grupo {grupo_id和grupo_nome},我想更改grupo_nome并再次运行useEffect,已经尝试了许多变量作为参数,但从不工作。

reactjs axios react-hooks use-effect
1个回答
0
投票

每几篇文章和react docs,将其放在useEffect中都是不好的做法。

[建议您将其包装在异步的useCallback中,或将其包装在useEffect内部的函数中,然后在useEffect中调用该函数。

在这里查看这些文章:

The Abramov guy

Official docs on custom hooks

useEffect(() => {
  async function someFunc () {
   await Axios.get(`https://taskcontrolapp.herokuapp.com/taskcontrol/grupo/${props.id}`)
    .then(response => {
      setGrupo(response.data)
    }).catch(error => {
      console.log(error)
    })
 }

someFunc()

 return () => {
   // do some clean up here 
 }

// Note the dependency array here...
}, [props.id, grupo_nome])
© www.soinside.com 2019 - 2024. All rights reserved.