当 ref 在使用效果依赖关系中丢失时没有 eslint 警告



我对useEffect中的ref有一个疑问。 是否需要将其添加到依赖项中?

const App = () => {
const ref = useRef();
useEffect(() => {
//do something about ref
}, []); //<-- ref is not here
}

上面的代码没有给出任何 ESLint 警告。ref在依赖项中是否免除

简短的回答是肯定的,您不必向依赖项数组添加ref

为了更深入地理解,您可以阅读Dan Abramov的A Complete Guide to useEffect。那里的一句话回答了你的问题:

(你可以从 deps 中省略 dispatch、setState 和 useRef 容器值,因为 React 保证它们是静态的。但指定它们也没有什么坏处。

最新更新