promise/param-names スタイル
何をするか
Promise コンストラクタの標準的なパラメータ名を強制します。
なぜ問題なのか
new Promise() を初期化する際に、resolve、reject というパラメータ名を使用することで、順序が reject、resolve のように混同されるのを避けることができます。Promise コンストラクタは、RevealingConstructor パターンを使用しています。言語仕様と同一のパラメータ名を使用することで、コードの一貫性が向上し、理解しやすくなります。
例
このルールに違反する不正なコードの例:
javascript
new Promise(function (reject, resolve) {
/* ... */
}); // オーダーが不正
new Promise(function (ok, fail) {
/* ... */
}); // 標準外のパラメータ名このルールに従う正しいコードの例:
javascript
new Promise(function (resolve, reject) {});設定
このルールは、以下のプロパティを持つ設定オブジェクトを受け入れます。
rejectPattern
type: string
reject パラメータ名の検証に使用される正規表現パターン。指定された場合、デフォルトの ^_?reject$ チェックの代わりにこのパターンが使用されます。
resolvePattern
type: string
resolve パラメータ名の検証に使用される正規表現パターン。指定された場合、デフォルトの ^_?resolve$ チェックの代わりにこのパターンが使用されます。
使用方法
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"plugins": ["promise"],
"rules": {
"promise/param-names": "error"
}
}bash
oxlint --deny promise/param-names --promise-plugin