首页 > 解决方案 > React.useEffect() 第二个参数默认值

问题描述

我想知道React.useEffect()API

React.useEffect(() => {
  // do something only when `someVariable` change.
}, [someVariable]);

或者,如果您希望每次道具或状态更改时都调用它。

React.useEffect(() => {
  // do something anytime a prop/state change
});

我的查询是后一种方法,React.useEffect每次任何道具/状态更改时都会触发的默认第二个参数是什么?

标签: reactjsreact-hooks

解决方案


因此,基于来自 React 代码库的https://github.com/facebook/react/blob/master/packages/react/src/ReactHooks.js#L87,我看到默认的第二个参数是undefined.

React.useEffect(() => {}. undefined);

每次道具/状态发生变化时,上述内容都会更新,基本上是导致它重新渲染的任何内容。

基于此检查

inputs: Array<mixed> | void | null, // which means it is either an array or undefined

参考:React useEffect 代码


推荐阅读