Home / Function/ setValueForStyles() — react Function Reference

setValueForStyles() — react Function Reference

Architecture documentation for the setValueForStyles() function in CSSPropertyOperations.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  236c422d_d866_d548_e097_3cec99530791["setValueForStyles()"]
  e3e314a2_4cee_1a10_2d68_791d5d66f89e["CSSPropertyOperations.js"]
  236c422d_d866_d548_e097_3cec99530791 -->|defined in| e3e314a2_4cee_1a10_2d68_791d5d66f89e
  5a792874_dbaf_1dd0_9e62_d6a16580e0b5["setProp()"]
  5a792874_dbaf_1dd0_9e62_d6a16580e0b5 -->|calls| 236c422d_d866_d548_e097_3cec99530791
  65717281_efda_4b8d_7a97_9947c26aa05e["setPropOnCustomElement()"]
  65717281_efda_4b8d_7a97_9947c26aa05e -->|calls| 236c422d_d866_d548_e097_3cec99530791
  db812c8f_ddfe_4781_b849_4e6ff94d7b5f["validateShorthandPropertyCollisionInDev()"]
  236c422d_d866_d548_e097_3cec99530791 -->|calls| db812c8f_ddfe_4781_b849_4e6ff94d7b5f
  a5cb946f_4be7_ba78_7ea5_74c8351709a8["setValueForStyle()"]
  236c422d_d866_d548_e097_3cec99530791 -->|calls| a5cb946f_4be7_ba78_7ea5_74c8351709a8
  style 236c422d_d866_d548_e097_3cec99530791 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/react-dom-bindings/src/client/CSSPropertyOperations.js lines 111–166

export function setValueForStyles(node, styles, prevStyles) {
  if (styles != null && typeof styles !== 'object') {
    throw new Error(
      'The `style` prop expects a mapping from style properties to values, ' +
        "not a string. For example, style={{marginRight: spacing + 'em'}} when " +
        'using JSX.',
    );
  }
  if (__DEV__) {
    if (styles) {
      // Freeze the next style object so that we can assume it won't be
      // mutated. We have already warned for this in the past.
      Object.freeze(styles);
    }
  }

  const style = node.style;

  if (prevStyles != null) {
    if (__DEV__) {
      validateShorthandPropertyCollisionInDev(prevStyles, styles);
    }

    for (const styleName in prevStyles) {
      if (
        prevStyles.hasOwnProperty(styleName) &&
        (styles == null || !styles.hasOwnProperty(styleName))
      ) {
        // Clear style
        const isCustomProperty = styleName.indexOf('--') === 0;
        if (isCustomProperty) {
          style.setProperty(styleName, '');
        } else if (styleName === 'float') {
          style.cssFloat = '';
        } else {
          style[styleName] = '';
        }
        trackHostMutation();
      }
    }
    for (const styleName in styles) {
      const value = styles[styleName];
      if (styles.hasOwnProperty(styleName) && prevStyles[styleName] !== value) {
        setValueForStyle(style, styleName, value);
        trackHostMutation();
      }
    }
  } else {
    for (const styleName in styles) {
      if (styles.hasOwnProperty(styleName)) {
        const value = styles[styleName];
        setValueForStyle(style, styleName, value);
      }
    }
  }
}

Domain

Subdomains

Frequently Asked Questions

What does setValueForStyles() do?
setValueForStyles() is a function in the react codebase, defined in packages/react-dom-bindings/src/client/CSSPropertyOperations.js.
Where is setValueForStyles() defined?
setValueForStyles() is defined in packages/react-dom-bindings/src/client/CSSPropertyOperations.js at line 111.
What does setValueForStyles() call?
setValueForStyles() calls 2 function(s): setValueForStyle, validateShorthandPropertyCollisionInDev.
What calls setValueForStyles()?
setValueForStyles() is called by 2 function(s): setProp, setPropOnCustomElement.

Analyze Your Own Codebase

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

Try Supermodel Free