javascript - 有没有办法在不等待的情况下检查直接调用的异步函数
问题描述
很多时候我不小心像这样直接调用了一个异步函数
let get_users;
let users;
/*
* @return data on success and null otherwise
*/
get_users = async function (){
let users;
users = await $.ajax({...});
return users;
}
users = get_users();
if (users === null){
console.log ('Fail');
}
else{
console.log ('Success');
}
这将Success
每次写入,因为返回promise
的不是 null,调试起来简直是一场噩梦。我可以遍历所有 500 多个异步函数(例如foo.bar_async ()
)并附加一些内容,然后使用 grep 查找在*_async
没有命令的情况下调用函数的所有情况await
,但这非常困难且非常难看。有没有更好的调试方法(注意我不相信 JSHint 可以处理这个问题,尤其是当文件作为模块加载时)?
解决方案
推荐阅读
- angular - 重新初始化组件时,AGM 是否保留 Google Map 的会话?
- amazon-web-services - 无需更改客户端代码即可轮换 IAM 用户访问密钥
- javascript - 如何更改 Ant Design 卡片组件的标题字体?
- centos - MarkLogic Server 安装 - 服务器安装页面的访问被拒绝 302
- python - 如何修复pytorch'RuntimeError:类型为torch.cuda.LongTensor但发现类型为torch.LongTensor的预期对象'
- sql-server - 从第一个表中获取所有数据,即使连接表中不存在连接条目
- c++ - 如何解决索引和排序问题
- node.js - 如何从节点 js 中的特定路径执行命令?
- binance - 如何查找 Binance websocket API 的符号名称
- angular - 关闭模态 - 使用 Angular 的 Ionic 4