#javascript #reactjs #eslint #prettier #eslint-config-airbnb
Вопрос:
Использование ESLint/Красивее в коде VS с руководством по стилю AirBNB JS. Пытаюсь переопределить правила в руководстве по стилю, чтобы они предупреждали, а не не компилировались, и они не переопределяют. Я прочитал статью ESLint об иерархии и, основываясь на моей файловой структуре (package.json и .eslintrc.json в одном каталоге), файл eslint должен переопределяться. Одна вещь, которая может быть проблемой, заключается в том, что у меня нет файла .prettierrc? Нужен ли он мне?
Несколько вещей, которые я пробовал:
- добавление «root»:»true» в файл .eslintrc.json
- перемещение .eslintrc.json в точный каталог, в котором находятся мои файлы (только внутри папки компонентов)
- перемещение «расширенного» бита .eslintrc.json в конец файла по сравнению с началом
- использование «переопределений» вместо «правил»
- использование «предупредить» и «выключить» , а также 1 и 0 в переопределениях
вот мой файл .eslintrc.json:
{
"env": {
"browser": true,
"es2021": true
},
"root": "true",
"extends": ["plugin:react/recommended", "prettier", "airbnb"],
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": 12,
"sourceType": "module"
},
"plugins": ["react"],
"rules": {
"react/prop-types": "off",
"react/self-closing-comp": "warn",
"no-param-reassign": 0,
"no-unused-vars": "warn"
}
}
вот мои зависимости от разработчиков в package.json прямо сейчас:
"devDependencies": {
"babel-eslint": "^10.1.0",
"eslint": "^7.29.0",
"eslint-config-airbnb": "^18.2.1",
"eslint-config-prettier": "^6.15.0",
"eslint-config-wesbos": "^1.0.1",
"eslint-plugin-html": "^6.1.2",
"eslint-plugin-import": "^2.23.4",
"eslint-plugin-jsx-a11y": "^6.4.1",
"eslint-plugin-prettier": "^3.4.0",
"eslint-plugin-react": "^7.24.0",
"eslint-plugin-react-hooks": "^4.2.0",
"prettier": "^2.3.1"
}
}
Есть какие-нибудь идеи? Перепробовал почти все на форуме, что кажется связанным, и не повезло. Моя конфигурация здесь неправильная? нет-парам-переназначение-это действительно то, что доставляет мне больше всего проблем.