Skip to content
← Back to rules

typescript/no-duplicate-enum-values 正しさ

This rule is turned on by default.

何をしているか

重複する列挙子の値を許可しない。

なぜ悪いのか

TypeScript は重複する列挙子の値をサポートしていますが、通常は同じ列挙型内では各メンバーに一意な値を期待します。重複した値は、追跡しづらいバグを引き起こす可能性があります。

このルールは、複数のメンバーが同じ値で初期化された列挙型の定義を禁止します。初期化子を持たないメンバーについてはチェックしません。

誤りの例:

ts
enum E {
  A = 0,
  B = 0,
}
ts
enum E {
  A = "A",
  B = "A",
}

正しい例:

ts
enum E {
  A = 0,
  B = 1,
}
ts
enum E {
  A = "A",
  B = "B",
}
ts
enum E {
  A,
  B,
}

使い方

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

json
{
  "rules": {
    "typescript/no-duplicate-enum-values": "error"
  }
}
bash
oxlint --deny typescript/no-duplicate-enum-values

参照