If you use React as a script tag, these top-level APIs are available on the
ReactDOM global. If you use ES6 with npm, you can write
import ReactDOM from 'react-dom'. If you use ES5 with npm, you can write
var ReactDOM = require('react-dom').
react-dom package provides DOM-specific methods that can be used at the top level of your app and as an escape hatch to get outside of the React model if you need to. Most of your components should not need to use this module.
React supports all popular browsers, including Internet Explorer 9 and above.
We don't support older browsers that don't support ES5 methods, but you may find that your apps do work in older browsers if polyfills such as es5-shim and es5-sham are included in the page. You're on your own if you choose to take this path.
ReactDOM.render( element, container, [callback] )
If the React element was previously rendered into
container, this will perform an update on it and only mutate the DOM as necessary to reflect the latest React element.
If the optional callback is provided, it will be executed after the component is rendered or updated.
ReactDOM.render()controls the contents of the container node you pass in. Any existing DOM elements inside are replaced when first called. Later calls use React’s DOM diffing algorithm for efficient updates.
ReactDOM.render()does not modify the container node (only modifies the children of the container). It may be possible to insert a component to an existing DOM node without overwriting the existing children.
ReactDOM.render()currently returns a reference to the root
ReactComponentinstance. However, using this return value is legacy and should be avoided because future versions of React may render components asynchronously in some cases. If you need a reference to the root
ReactComponentinstance, the preferred solution is to attach a callback ref to the root element.
Remove a mounted React component from the DOM and clean up its event handlers and state. If no component was mounted in the container, calling this function does nothing. Returns
true if a component was unmounted and
false if there was no component to unmount.
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
findDOMNodeis 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.
findDOMNodeonly 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
render()on a component that has yet to be created) an exception will be thrown.
findDOMNodecannot be used on functional components.