Skip to content
← Back to rules

typescript/no-this-alias 正しさ

This rule is turned on by default.

何をしますか

this の別名を作成することを禁止します。

なぜ問題ですか?

this に変数を割り当てる代わりに、適切にアロー関数ラムダを使用しない場合、それは ES2015 以前の手法やスコープの管理が不十分な可能性があります。

このルールに対して誤りなコードの例:

js
const self = this;

setTimeout(function () {
  self.doWork();
});

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

js
setTimeout(() => {
  this.doWork();
});

設定

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

allowDestructuring

type: boolean

default: true

this をローカル変数にデストラクチャリングするかどうか。

allowedNames

type: string[]

default: []

this に別名として許可される変数名の配列。

使用方法

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

json
{
  "rules": {
    "typescript/no-this-alias": "error"
  }
}
bash
oxlint --deny typescript/no-this-alias

参照