@typescript-eslint/no-misused-promises
禁止在不正确的位置使用Promise。
规则配置
// code-linter.json5
{
"rules": {
"@typescript-eslint/no-misused-promises": "error"
}
}
选项
详情请参考@typescript-eslint/no-misused-promises选项。
正例
export async function func(): Promise<void>{
const promise = Promise.resolve('value');
// Always `await` the Promise in a conditional
if (await promise) {
// Do something
}
const val = await promise ? '123' : '456';
console.log(`${val}`);
while (await promise) {
// Do something
}
}
反例
export async function func(): Promise<void>{
const promise = Promise.resolve('value');
// 默认条件语句中需要使用await Promise
if (promise) {
// Do something
}
// 默认条件语句中需要使用await Promise
const val = promise ? '123' : '456';
console.log(`${val}`);
// 默认条件语句中需要使用await Promise
while (promise) {
// Do something
}
}
规则集
plugin:@typescript-eslint/all
Code Linter代码检查规则的配置指导请参考Code Linter代码检查。