使用反应查询反应本机useeffect eslint错误
React native use effect es-lint error with react query
我正在从 react-query 挂钩获取 mutate() 函数并将其传递给 use effect,但 use effect 显示错误,它缺少依赖项 mutate。包括它或删除依赖项数组。
下面是代码示例。
const {track, setTrack} = useState(null)
const {mutate} = useTracker()
useEffect(() => {
if(track?.tracking) {
mutate()
}
}, [track]) // This line is throwing the es-lint error
我在这里遗漏了什么,因为我认为我不能在数组依赖项中传递 mutate 函数。
您可以而且应该将 mutate
作为依赖项传递给 useEffect。该函数保证在重新渲染时保持稳定,因此不会造成任何伤害,但 linter 无法知道这一点。
我正在从 react-query 挂钩获取 mutate() 函数并将其传递给 use effect,但 use effect 显示错误,它缺少依赖项 mutate。包括它或删除依赖项数组。
下面是代码示例。
const {track, setTrack} = useState(null)
const {mutate} = useTracker()
useEffect(() => {
if(track?.tracking) {
mutate()
}
}, [track]) // This line is throwing the es-lint error
我在这里遗漏了什么,因为我认为我不能在数组依赖项中传递 mutate 函数。
您可以而且应该将 mutate
作为依赖项传递给 useEffect。该函数保证在重新渲染时保持稳定,因此不会造成任何伤害,但 linter 无法知道这一点。