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运行,已经尝试了许多变量作为参数,但从未使用。
答案 0 :(得分:0)
根据几篇文章和react文档,将其放在useEffect中是不好的做法。
建议您将其包装在异步的useCallback中,或者将其包装在useEffect内部的函数中,然后在useEffect中调用该函数。
在此处查看这些文章:
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])