эслинт линтинг .eslintrc.js сам по себе

#eslint

#eslint

Вопрос:

У меня есть следующие сценарии и правила eslint в моем package.json:

   "scripts": {
    "build": "tsc",
    "test": "jest tests/** --coverage",
    "lint": "eslint './src/**/*.{js,ts,tsx}' --quiet --fix",
    "prettier": "prettier --check './**/*.ts'",
    "prettier-format": "prettier --config .prettierrc './**/*.ts' --write"
...
  },
  "lint-staged": {
    "**/*.{js,jsx,ts,tsx}": [
      "prettier --config .prettierrc './**/*.ts' --write",
      "prettier --check './**/*.ts'",
      "eslint './src/**/*.{js,ts,tsx}' --quiet --fix"
    ]
  },
  "pre-commit": [
    "lint-staged"
  ],
 

Когда я запускаю npm run lint , я не получаю никаких ошибок. Но когда запускается мой хук предварительной фиксации, я получаю сообщение об ошибке в .eslintrc.js файле:

 /.../api/.eslintrc.js
  1:15  error    Require statement not part of import statement                                        @typescript-eslint/no-var-requires
 

Строка кода, на которую он ссылается, имеет следующее:

 const _path = require('path');
 

Я знаю, что могу использовать код, чтобы заставить eslint игнорировать это. Но я не понимаю, почему eslint анализирует .eslintrc.js в первую очередь, поскольку он не находится в src папке (он находится в корневой папке на том же уровне package.json ).

Комментарии:

1. lint-staged не использует сценарий lint, который вы определили, он не знает, что вы хотите охватить только src. Используйте .eslintignore для более согласованного поведения.