我已配置TsLint来警告未处理的承诺:
{
"rules": {
"no-floating-promises": [
true,
"Promise",
"Q.Promise"
],
}
}
代码遵循standard template for build tasks for vsts:
async function run() {
try {
...
} catch (err) {
tl.setResult(tl.TaskResult.Failed, err.message);
}
}
run(); // tslint complains here...
TsLint现在抱怨未兑现承诺,但是我无法在run
之前添加等待...我不想在.then
上混用运行,因为它引入了另一个异步范例。
ERROR: C:/Users/JesseHouwing/Source/Repos/....ts[16, 5]: Promises must be handled appropriately
这些任务是在Node中执行的,无需等待run
方法,它可以正常工作...我可以安全地禁止这样做吗?有更好的方法吗?
答案 0 :(得分:2)
似乎我可以使用以下方法安全地隐藏该值:
async function run() {
try {
...
} catch (err) {
tl.setResult(tl.TaskResult.Failed, err.message);
}
}
void run(); // tslint no longer complains here and it's explicit :)
在顶级void
方法前面插入run
似乎可以解决这个问题。