findDOMNode
is an escape hatch used to access the underlying DOM node. In most cases, use of this escape hatch is discouraged because it pierces the component abstraction. It has been deprecated in StrictMode
.
ReactDOM.findDOMNode(component)
If this component has been mounted into the DOM, this returns the corresponding native browser DOM element. This method is useful for reading values out of the DOM, such as form field values and performing DOM measurements. In most cases, you can attach a ref to the DOM node and avoid using findDOMNode
at all.
When a component renders to null
or false
, findDOMNode
returns null
. When a component renders to a string, findDOMNode
returns a text DOM node containing that value. As of React 16, a component may return a fragment with multiple children, in which case findDOMNode
will return the DOM node corresponding to the first non-empty child.
Note:
findDOMNode
only works on mounted components (that is, components that have been placed in the DOM). If you try to call this on a component that has not been mounted yet (like calling findDOMNode()
in render()
on a component that has yet to be created) an exception will be thrown.
findDOMNode
cannot be used on function components.