我有以下 TypeScript 代码(简化以演示问题):
import * as argon2 from "argon2";
export default async function(password:string):Promise<string>
{
return argon2.hash(password, {
type: argon2.argon2id,
memoryCost: 32768,
parallelism: 4,
timeCost: 12
});
};
目标是将自定义参数应用于 Argon2 哈希方法。代码大概可以正常工作,但我的 ESLint 配置很生气。这是我的 ESLint 配置的相关部分:
"require-await": "off",
"@typescript-eslint/require-await": "error",
"@typescript-eslint/promise-function-async": [
"error",
{
"allowAny": false
}
],
只要async
关键字存在,这就会触发“require-await”规则
但是当我删除async
关键字时,这会触发“promise-function-async”规则
我不确定是否:
- 有一种更聪明的方式来配置 ESLint
- 有一种更聪明的方法可以编写避免这些错误的函数(也许它暗示了一个我没有看到的合法潜在错误?)
- 这是一个有效的案例
// eslint-disable-next-line