Notoriously Problematic Merge

    eslint-plugin-react-hooks

    4.3.0 • Public • Published

    eslint-plugin-react-hooks

    This ESLint plugin enforces the Rules of Hooks.

    It is a part of the Hooks API for React.

    Installation

    Note: If you're using Create React App, please use react-scripts >= 3 instead of adding it directly.

    Assuming you already have ESLint installed, run:

    # npm
    npm install eslint-plugin-react-hooks --save-dev
    
    # yarn
    yarn add eslint-plugin-react-hooks --dev

    Then extend the recommended eslint config:

    {
      "extends": [
        // ...
        "plugin:react-hooks/recommended"
      ]
    }

    Custom Configuration

    If you want more fine-grained configuration, you can instead add a snippet like this to your ESLint configuration file:

    {
      "plugins": [
        // ...
        "react-hooks"
      ],
      "rules": {
        // ...
        "react-hooks/rules-of-hooks": "error",
        "react-hooks/exhaustive-deps": "warn"
      }
    }

    Advanced Configuration

    exhaustive-deps can be configured to validate dependencies of custom Hooks with the additionalHooks option. This option accepts a regex to match the names of custom Hooks that have dependencies.

    {
      "rules": {
        // ...
        "react-hooks/exhaustive-deps": ["warn", {
          "additionalHooks": "(useMyCustomHook|useMyOtherCustomHook)"
        }]
      }
    }

    We suggest to use this option very sparingly, if at all. Generally saying, we recommend most custom Hooks to not use the dependencies argument, and instead provide a higher-level API that is more focused around a specific use case.

    Valid and Invalid Examples

    Please refer to the Rules of Hooks documentation and the Hooks FAQ to learn more about this rule.

    License

    MIT

    Install

    npm i eslint-plugin-react-hooks

    Homepage

    reactjs.org/

    DownloadsWeekly Downloads

    6,787,431

    Version

    4.3.0

    License

    MIT

    Unpacked Size

    117 kB

    Total Files

    6

    Last publish

    Collaborators

    • gaearon
    • threepointone
    • acdlite
    • brianvaughn
    • trueadm
    • lunaruan