🐈

vscodeでprettierとeslintを設定しているディレクトリ以外のディレクトリーでも走ってしまう

2024/10/18に公開

前提

  • frontend(nextjs)と backend(nest)で異なるリポジトリーで管理をしている。
  • 異なる repository で異なる eslint,prettier を設定
  • vscode は frontend と backend ディレクトリーの親ディレクトリーを開いている
.
├── backend
│   ├── .eslintrc.js
│   └── .prettierrc
└── frontend
    ├── .eslintrc
    ├── .prettierignore
    └── .prettierrc

vscode(一部抜粋)
vscode

問題

  • backend の eslint、prettier の設定が反映されず、frontend の eslint、prettier の設定が反映されてしまった。
  • frontend の prettierignore がうまく設定できない

解決方法

  • frontend と backend を異なる vscode タブで開く

原因

  • 最初の.prettierrc や.eslintrc などの設定ファイルを置くことで、VSCode とそれぞれの拡張機能がこれらの設定を認識し、プロジェクト全体(vscode で開いているディレクリー)にわたってコードのフォーマットやリントを反映するため、backend のディレクトリー内も frontend の eslint,prettier の設定の可能性がある

まとめ

どうしても git の repository を分けてるとこのような問題が発生してしまう。そろそろ monorepo を導入しようかな~
https://zenn.dev/burizae/articles/c811cae767965a

GitHubで編集を提案

Discussion