![](/img/trans.png)
[英]React Hook useEffect has a missing dependency with useEffect
[英]React useEffect Missing Dependency
React 显示缺少依赖关系,但一切似乎都很好。 我不想在useeffect里面声明function,你能帮忙吗?
即使我在 usEffect 中声明了所有 function 代码,它也会告诉用户令牌也缺少依赖关系。 我不明白要在这里做出什么反应..文档中没有示例。
const Profile = () => {
const [user, dispatch] = useContext(UserContext)
const [login, setLogin] = useState('waiting')
let [selected, setSelected] = useState('video')
let [section, setSection] = useState()
const [userdata,setUserData] = useState()
useEffect(() => {
checkCurrentUser()
}, [])
let checkCurrentUser = async () => {
console.log(user.token)
let result = await requestCurrentUser(user.token)
if (result.status) {
await dispatch({
type: "USER",
payload: result.data
})
setUserData(result.data)
setLogin('success')
} else {
setLogin('failed')
}
}
if (login === 'waiting') {
return (
<PianoPlay width={300} classAdd="loading" />
)
}
else if (login === 'failed') {
return (
<Redirect push to="/" />
)
}
else if (!userdata.hasOwnProperty('id')) {
return (
<Redirect push to="/home" />
)
}
您可以通过两种方式解决此问题。
1 - useEffect(checkCurrentUser, [])
2-
const checkCurrentUser = useCallback(() => {
...
}, [])
useEffect(() => {
checkCurrentUser()
}, [checkCurrentUser])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.