是否有节点或 vscode 功能可以防止我意外忘记使用 wait 调用异步函数?我已经这样做过几次了,但总是花费我几个小时来寻找错误。
有一个 ESlint 规则,它会警告没有等待表达式的异步函数。
编辑: 您需要创建“.eslintrc.json”文件并向其添加一些规则。如果您全局安装了 ESLint,则可以通过运行
eslint --init
来完成。您可以在 vscode 插件 github 存储库中找到更多信息。
async/await 相关的可用规则有:
您可以在官方文档页面找到有关 ESLint 和可用规则的更多信息。
这对于 Javascript 或正常的 ESLint 规则来说是不可能的,因为 ESLint 无法知道表达式的类型,因此无法知道什么时候是 Promise(不执行代码)。
如果您使用 TypeScript,则可以使用 no-misused-promises。
这是一个特别有用的示例:
const promise = Promise.resolve(false);
if (promise) {
// Do something
}
缺少await会导致if总是发生。