Documentation
Configuration

Configuration

This plugin provides the following configurations:

Settings

jsxPragma

(type: string, default: "React")

The identifier that’s used for JSX Element creation.
This should not be a member expression (i.e. use "React" instead of "React.createElement").

jsxPragmaFrag

(type: string, default: "Fragment")

The identifier that’s used for JSX fragment elements.
This should not be a member expression (i.e. use "Fragment" instead of "React.Fragment").

version

(type: string, default: "detect")

React version to use, "detect" means auto detect React version from the project’s dependencies.

additionalHooks

(type: Record<string, string[]>)

A Record of aliases for React’s built-in Hooks. ESLint React will recognize these aliases as equivalent to the built-in Hooks in all its rules.
This is intended to cover edge cases. We suggest to use this option very sparingly, if at all.
(e.g. { useLayoutEffect: ["useIsomorphicLayoutEffect"] }).

Examples

.eslintrc.js
// ...
module.exports = {
  // ...
  settings: {
    reactOptions: {
      jsxPragma: "React",
      jsxPragmaFrag: "Fragment",
      additionalHooks: {
        useLayoutEffect: ["useIsomorphicLayoutEffect"],
        // ...
      },
      version: "detect",
    }
  }
  // ...
}