【问题标题】:How to refactor this redundant 'await' on a non-promise如何在不承诺的情况下重构这个多余的“等待”
【发布时间】:2020-11-08 23:41:06
【问题描述】:

我在此代码上的 SonarQube 上收到 Refactor this redundant 'await' on a non-promise. 错误:

async getText(): Promise<string> {
    const element = await $(header.content);
    return await element.getText();
}

对于这一行await $(locators.content)

我该如何解决这个问题?

SonarQube 上的解决方案是使用类似的东西:

let x = new Promise(resolve => resolve(42));
await x;

let y = p ? 42 : new Promise(resolve => resolve(42));
await y;

尝试在 let 或 const 中添加 $(locators.content),但没有成功。

【问题讨论】:

    标签: typescript promise sonarqube


    【解决方案1】:

    只需删除await$ 不返回一个承诺,所以等待它是没有用的。

    const element = $(header.content);
    

    【讨论】:

    • 删除await 后它会以同样的方式工作吗?我看到我也在退货线上使用它。所以它是重复的?
    • will it work on the same way by removing the await 存在一些挑剔的差异,但出于您的目的,它的工作方式相同。如果没有承诺,那么您不应该等待。这也适用于第二次等待。
    猜你喜欢
    • 1970-01-01
    • 2020-01-31
    • 2018-09-12
    • 1970-01-01
    • 2017-05-08
    • 2015-09-28
    • 2018-05-27
    • 2016-10-16
    相关资源
    最近更新 更多