eslint/preserve-caught-error Suspicious
何をするか
キャッチブロック内でエラーを再スローする場合、cause プロパティを使用して元のエラーを保持することを強制します。
なぜ問題なのか
元のエラーを保持せずにエラーを再スローすると、重要なデバッグ情報が失われ、問題の根本原因を追跡するのが難しくなります。
例
このルールに違反する不適切なコードの例:
js
try {
doSomething();
} catch (err) {
throw new Error("Something failed");
}このルールに従った適切なコードの例:
js
try {
doSomething();
} catch (err) {
throw new Error("Something failed", { cause: err });
}設定
このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。
requireCatchParameter
type: boolean
default: false
true に設定された場合、キャッチ句は常にパラメータを持たなければならないと要求します。
使用方法
設定ファイルまたは CLI でこのルールを有効化するには、以下のように使用できます:
json
{
"rules": {
"preserve-caught-error": "error"
}
}bash
oxlint --deny preserve-caught-error