What StrictMode Does
The React StrictMode helps to identify and detect various warnings/errors during the development phase, namely…
- Helps to identify those components having unsafe lifecycles: Some of the legacy component lifecycle methods are considered to be unsafe to use in async applications. The React StrictMode helps to detect the use of such unsafe methods. Once enabled, it displays a list of all components using unsafe lifecycle methods as warning messages.
- Warns about the usage of the legacy string ref API: Initially, there were two methods to manage refs- legacy string ref API and the callback API. Later, a third alternate method, the createRef API was added, replacing the string refs with object refs, which allowed the StrictMode to give warning messages whenever string refs are used.
- Warns about the usage of the deprecated findDOMNode: Since the findDOMNode is only a one-time read API, it is not possible to handle changes when a child component attempts to render a different node (other than the one rendered by the parent component). These issues were detected by the React StrictMode and displayed as warning messages.
- Helps in Finding Unexpected Side Effects: Helps detect unexpected side effects during rendering. e.g., it will warn if the render function has side effects like mutating variables outside of the component.
What is StrictMode in React ?
The React StrictMode can be viewed as a helper component that allows developers to code efficiently and brings to their attention any suspicious code that might have been accidentally added to the application. The StrictMode can be applied to any section of the application, not necessarily to the entire application. It is especially helpful to use while developing new codes or debugging the application.