Skip to content
← Back to rules

eslint/sort-imports スタイル

🛠️ An auto-fix is available for this rule for some violations.

何をするか

このルールはすべてのインポート宣言をチェックし、インポートが使用するメンバー構文によってまず並べ替えられた後、最初のメンバーまたはエイリアス名によってアルファベット順に並んでいることを確認します。

複数のインポートを宣言する場合、並べ替えられたインポート宣言リストは、開発者がコードを読みやすく、必要となるインポートを後で見つけやすくなります。

なぜ悪いのか

一貫したインポートの並べ替えは、コードの可読性と保守性に役立ちます。

このルールに対して不正なコードの例:

javascript
import { b, a, c } from "foo.js";

import d from "foo.js";
import e from "bar.js";

設定

このルールは以下のプロパティを持つ設定オブジェクトを受け入れます:

allowSeparatedGroups

type: boolean

default: false

true の場合、空行で区切られたインポートグループは個別に扱われるようになります。

ignoreCase

type: boolean

default: false

true の場合、インポート名の並び替え時に大文字小文字の区別を無視します。

ignoreDeclarationSort

type: boolean

default: false

true の場合、インポート宣言の並べ替え(import 文の順序)を無視します。

ignoreMemberSort

type: boolean

default: false

true の場合、1つのインポート宣言内のインポートメンバーの並べ替えを無視します。

memberSyntaxSortOrder

type: array

default: ["none", "all", "multiple", "single"]

異なるインポート構文の並べ替え順を指定します。 4種類すべてを含む必要があります!

memberSyntaxSortOrder[n]

type: "none" | "all" | "multiple" | "single"

使い方

設定ファイルまたは CLI でこのルールを有効化するには、次のように使用できます:

json
{
  "rules": {
    "sort-imports": "error"
  }
}
bash
oxlint --deny sort-imports

参照