Rules
no-nested-component-definitions
Full Name in eslint-plugin-react-x
Full Name in @eslint-react/eslint-plugin
Presets
x
recommended
recommended-typescript
recommended-type-checked
Description
Disallow nesting component definitions inside other components.
Nesting component definitions inside other components is a common mistake that can be extremely slow and cause issues and bugs, and the state of components defined during rendering will not be preserved by React. Instead, define every component at the top level.
Examples
Failing
Passing
When a child component needs some data from a parent, pass it by props instead of nesting definitions.
Implementation
Further Reading
See Also
no-nested-lazy-component-declarations
Disallow nesting lazy component declarations inside other components.