12/18(水)
TypeScript+ReactのプロジェクトにESLintとprettierを入れた。ESLintのプラグインを上手く組み合わせていくテクニックが難しかった。
結論はこんな感じ。
.eslintrc.json
{
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "tsconfig.json",
"sourceType": "module"
},
"extends": [
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended",
"plugin:react/recommended"
]
}
- prettier/recommendedは入れないとprettierとESLintが干渉するらしいので
- react/recommendedは入れないとJSXで使われている変数がunused扱いになるので
- 順番も大事らしい(上から下に適用?)
yarn lint
で能動的にlintを実行できるようにしつつ、lint-stagedとhuskyでcommit時にも仕込んだ。