メインコンテンツへスキップ

require-await

Promiseを返さない、かつ`await`式を含まない非同期関数を禁止します。

拡張 "plugin:@typescript-eslint/recommended-type-checked" ESLint設定 で有効にすると、このルールが有効になります。

💭

このルールは 型情報 が必要です。

このルールは基本のeslint/require-awaitルールを拡張します。型情報を使用して、`await`式を含まないPromiseを返す関数を`async`としてマークすることを許可します。

このルールの正しいコードの例

async function returnsPromise1() {
return Promise.resolve(1);
}

const returnsPromise2 = () => returnsPromise1();

オプション

eslint/require-awaitのオプションを参照してください。

使用方法

.eslintrc.cjs
module.exports = {
"rules": {
// Note: you must disable the base rule as it can report incorrect errors
"require-await": "off",
"@typescript-eslint/require-await": "error"
}
};

Playgroundでこのルールを試してみてください ↗

使用しない場合

型チェックされたlintルールは従来のlintルールよりも強力ですが、型チェックされたlintingの設定も必要です。パフォーマンスに関するトラブルシューティングで、型チェックされたルールを有効にした後にパフォーマンスの低下が発生した場合を参照してください。

リソース

ESLintコアから ❤️ を込めて取得しました。