Extra rules for React Hooks.
Install
npm install --save-dev eslint-plugin-react-hooks-extra
Setup
import js from "@eslint/js";
import reactHooksExtra from "eslint-plugin-react-hooks-extra";
import { defineConfig } from "eslint/config";
import tseslint from "typescript-eslint";
export default defineConfig(
{
files: ["**/*.ts", "**/*.tsx"],
extends: [
js.configs.recommended,
tseslint.configs.recommended,
reactHooksExtra.configs.recommended,
],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname,
},
},
rules: {
"react-hooks-extra/no-direct-set-state-in-use-effect": "warn",
},
},
);
Rules
https://eslint-react.xyz/docs/rules/overview#hooks-extra-rules