Skip to content
← Back to rules

eslint/no-this-before-super 正しさ

This rule is turned on by default.

何を実行するか

this または super を使用する前に super() を呼び出すことを要求します。

このルールは、TypeScript コードでは無効化できます。なぜなら TypeScript コンパイラがこのチェックを強制しているためです。

なぜ問題なのか

継承クラスのコンストラクタ内で、super() の呼び出しよりも前に this / super が使われると、ReferenceError が発生します。

このルールに違反する 誤り なコードの例:

javascript
class A1 extends B {
  constructor() {
    // super() を最初に呼び出す必要があります
    this.a = 0;
    super();
  }
}

使い方

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

json
{
  "rules": {
    "no-this-before-super": "error"
  }
}
bash
oxlint --deny no-this-before-super

参照