Home / Function/ resolveClassComponentProps() — react Function Reference

resolveClassComponentProps() — react Function Reference

Architecture documentation for the resolveClassComponentProps() function in ReactFiberClassComponent.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  7f5a1eb6_175b_de57_e39a_6c9d67383c84["resolveClassComponentProps()"]
  3805476a_1924_0e35_fff7_6afad197a523["ReactFiberClassComponent.js"]
  7f5a1eb6_175b_de57_e39a_6c9d67383c84 -->|defined in| 3805476a_1924_0e35_fff7_6afad197a523
  53f55fda_e2b6_2801_4fbc_525f8828d23d["updateHostRoot()"]
  53f55fda_e2b6_2801_4fbc_525f8828d23d -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  235e1db1_02a4_912f_7d82_ea6636c850c0["beginWork()"]
  235e1db1_02a4_912f_7d82_ea6636c850c0 -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  40e9392c_b382_4ef8_9ede_8ac85559673c["resumeMountClassInstance()"]
  40e9392c_b382_4ef8_9ede_8ac85559673c -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  d93c8e6d_2cc8_2077_fe19_1d954fc83959["updateClassInstance()"]
  d93c8e6d_2cc8_2077_fe19_1d954fc83959 -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  e2aa7e1c_c4bf_b49f_2759_ec6a5e7b2f89["commitClassLayoutLifecycles()"]
  e2aa7e1c_c4bf_b49f_2759_ec6a5e7b2f89 -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  1742f4ab_88cb_1f5c_9378_61760e273398["commitClassCallbacks()"]
  1742f4ab_88cb_1f5c_9378_61760e273398 -->|calls| 7f5a1eb6_175b_de57_e39a_6c9d67383c84
  style 7f5a1eb6_175b_de57_e39a_6c9d67383c84 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/react-reconciler/src/ReactFiberClassComponent.js lines 1184–1217

export function resolveClassComponentProps(
  Component: any,
  baseProps: Object,
): Object {
  let newProps = baseProps;

  // Remove ref from the props object, if it exists.
  if ('ref' in baseProps) {
    newProps = ({}: any);
    for (const propName in baseProps) {
      if (propName !== 'ref') {
        newProps[propName] = baseProps[propName];
      }
    }
  }

  // Resolve default props.
  const defaultProps = Component.defaultProps;
  if (defaultProps) {
    // We may have already copied the props object above to remove ref. If so,
    // we can modify that. Otherwise, copy the props object with Object.assign.
    if (newProps === baseProps) {
      newProps = assign({}, newProps);
    }
    // Taken from old JSX runtime, where this used to live.
    for (const propName in defaultProps) {
      if (newProps[propName] === undefined) {
        newProps[propName] = defaultProps[propName];
      }
    }
  }

  return newProps;
}

Domain

Subdomains

Frequently Asked Questions

What does resolveClassComponentProps() do?
resolveClassComponentProps() is a function in the react codebase, defined in packages/react-reconciler/src/ReactFiberClassComponent.js.
Where is resolveClassComponentProps() defined?
resolveClassComponentProps() is defined in packages/react-reconciler/src/ReactFiberClassComponent.js at line 1184.
What calls resolveClassComponentProps()?
resolveClassComponentProps() is called by 6 function(s): beginWork, commitClassCallbacks, commitClassLayoutLifecycles, resumeMountClassInstance, updateClassInstance, updateHostRoot.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free