promise/no-promise-in-callback 懸念
何をするか
エラー優先のコールバック関数内でプロミスを使用することを禁止します。
なぜ問題なのか
プロミスとコールバックを混在させると、不明瞭で一貫性のないコードになりがちです。 プロミスとコールバックは、非同期処理を扱うための異なるパターンです。 両者を混ぜると、処理の流れが分かりにくくなり、エラー処理も複雑化します。 コールバックはエラーを最初に受け取るパターンに依存しているのに対し、プロミスは catch を使います。
例
このルールに違反する誤ったコードの例:
js
doSomething((err, val) => {
if (err) console.error(err);
else doSomethingElse(val).then(console.log);
});このルールに準拠する正しいコードの例:
js
promisify(doSomething)().then(doSomethingElse).then(console.log).catch(console.error);使用方法
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"plugins": ["promise"],
"rules": {
"promise/no-promise-in-callback": "error"
}
}bash
oxlint --deny promise/no-promise-in-callback --promise-plugin