typescript/prefer-readonly Nursery
何を実行するか
再代入されないクラスメンバは、readonly としてマークされるべきであると要求します。
なぜこれは良くないのか
一度も変更されないメンバは、明示的に readonly として宣言することで、クラスの不変性を明確にし、誤って変更されるリスクを防ぐことができます。
例
このルールに対して 不正な コードの例:
ts
class Counter {
private value = 0;
getValue() {
return this.value;
}
}このルールに対して 正しい コードの例:
ts
class Counter {
private readonly value = 0;
getValue() {
return this.value;
}
}設定
このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。
onlyInlineLambdas
type: boolean
default: false
チェック対象を、インラインラムダ値で即時初期化されたメンバに限定します。
使用方法
このルールを設定ファイルまたは CLI で 有効化 するには、次のように使用できます:
json
{
"rules": {
"typescript/prefer-readonly": "error"
}
}bash
oxlint --type-aware --deny typescript/prefer-readonly