最近、エディターにVisual Studio Codeの使用を開始し、Prettier-JavaScriptフォーマッターを見つけました。私のコードを見栄えよく保つのに役立つので、素晴らしいプラグインだと思います。
AirbnbのESLint構成をセットアップしましたが、これが非常に役立つことがわかりました。
これがキャッチです。現在実行中のAirbnb ESLint構成は、PrettierでNiceを再生しません。たとえば、JavaScript文字列の場合、Prettierは、ダブルティックとAirbnbのESLintをシングルティックのようにフォーマットします。 Prettierを使用してコードをフォーマットすると、AirbnbのESLintは同意しません。
Kent DoddsがESLintの設定、特に ここの例 でいくつかの作業を行ったことを知っています。
しかし、Prettierの魔法を使ってコードをAirbnbのESLintにフォーマットできるソリューションを見つけることはできません。
eslint-config-prettier はこの目的のためだけに作成されたと思います: https://prettier.io/docs/en/eslint.html#turn-off-eslint-s-formatting -rules
基本的には オフ コードスタイリングに関係するすべてのルールは、prettier
がそれを処理するためです。
したがって、このプラグインを他の必要なeslintプラグイン(eslint-config-airbnb
など)とともにインストールし、eslintの設定でextends
フィールドに追加するだけです。例えば:
{
"extends": ["airbnb", "prettier"]
}
以下に、推奨される順序でいくつかの方法を示します。将来競合する可能性のある他のルールを気にする必要がないため、最初のアプローチをお勧めします。
i) eslint-config-prettier
をインストールし、.eslintrc
で拡張します。これを行うと、ESLint内のPrettierと競合する可能性のあるフォーマット関連のルールの一部がオフになります。
{
"extends": [
"airbnb",
"prettier"
]
}
ii)"singleQuote": true
構成ファイルに.prettierrc
を追加します。
{
"singleQuote": true,
...
}
iii)Prettierを起動するときに--single-quote
コマンドラインオプションを追加します。
$ prettier --single-quote ...
iv).eslintrc
設定ファイル(および競合する可能性のある他のファイル)内のESLintのquotes
ルールをオフにします。
{
"rules": {
"quotes": "off",
...
}
}
yarn add --dev eslint-plugin-prettier eslint-config-prettier
// .eslintrc
{
"extends": ["airbnb", "plugin:prettier/recommended"]
}
plugin:prettier/recommended
つのことを行います :
そして、あなたが反応している場合は、prettier/react
も追加できます:
{
"extends": [
"airbnb",
"plugin:prettier/recommended",
"prettier/react"
]
}
したがって、プロパティ"extends": "airbnb"
が追加された.eslintrcファイルがあります。別のプロパティ、ルールを追加し、そこに書き込むルールはairbnbから継承されたルールを上書きします
"extends": "airbnb",
"rules": {
"eqeqeq": 2,
"comma-dangle": 1,
}
ここで、2つのランダムルールを上書きしています。必要なルールを探す必要があります:)
ここに少しインタラクティブがあります CLIツール 私はPrettierでESLintをセットアップするために構築しました。インストールして実行するだけです:
npx eslint-prettier-init
これで問題が解決します。