所以我有以下效果
useEffect(() => {
if (disabled) {
setAnimatedValue(0);
} else {
setAnimatedValue(1);
}
}, [disabled]);
如果disabled
属性发生更改,只需将按钮设置为启用或禁用状态即可。
我还在我的eslint配置中添加了以下规则
'react-hooks/exhaustive-deps': 'warn',
现在,我收到警告,setAnimatedValue
必须与useEffect
道具一起添加到我的disabled
数组中,但这只是一个既不是状态也不是道具的函数,因此据我所知,它不应该真正进入那里。
是否有一种方法可以使此规则仅在我缺少state
或prop
值时才发出警告?
答案 0 :(得分:0)
如果您的setAnimation
函数不依赖外部状态或道具,则可以忽略。
即。如果setAnimation
唯一需要执行的操作就是传递给它的0/1值-那么可以忽略它。
它很可能具有二传手功能,所以很安全。
https://reactjs.org/docs/hooks-faq.html#is-it-safe-to-omit-functions-from-the-list-of-dependencies