jsx-eslint/eslint-plugin-react

no-unstable-nested-components does not detect components starting with underscore

Open

#4.002 geöffnet am 28. Apr. 2026

Auf GitHub ansehen
 (1 Kommentar) (0 Reaktionen) (0 zugewiesene Personen)JavaScript (8.630 Stars) (2.797 Forks)batch import
bughelp wanted

Beschreibung

A pattern we use commonly in our codebase (pre-dates me, and we're too far along the road now to change) is to prefix some components with an underscore e.g. when forwarding refs, or to signal a component shouldn't be exported etc.

Components with this naming convention do not get detected as parent components, and thus the unstable nested components are not flagged

function _Parent() {
  function NotFlagged() {
    return <b>oh no</b>
  }

  return <NotFlagged />
}

Given there have been other issues raised relating, and carve outs added for, this naming convention:

I think this constitutes a bug/oversight in this rule. Happy to make a PR, if there is agreement

Contributor Guide