typescript 获取Promise类型脚本中的值

gc0ot86w  于 2022-12-19  发布在  TypeScript
关注(0)|答案(3)|浏览(247)

typescript类中的一个函数返回了一个Promise<string>。我如何解开/生成这个承诺中的值。

functionA(): Promise<string> {
   // api call returns Promise<string>
}

functionB(): string {
   return this.functionA() // how to unwrap the value inside this  promise
}
w51jfk4q

w51jfk4q1#

我如何展开/产生承诺中的价值
你可以用async/await来实现,不要被愚弄,以为你只是从异步到同步,异步等待它只是.then的 Package 器。

functionA(): Promise<string> {
   // api call returns Promise<string>
}

async functionB(): Promise<string> {
   const value = await this.functionA() // how to unwrap the value inside this  promise
   return value;
}

更进一步

  • TypeScript深入探讨文档
tktrz96b

tktrz96b2#

试试这个

functionB(): string {
   return this.functionA().then(value => ... );
}
2wnc66cl

2wnc66cl3#

我的工作代码段(切换到包含url字符串的窗口)::

browser.getAllWindowHandles().then(function (handles) {
                    var length = handles.length;
                    console.log("count of windows::"+length);
                    for (var index=0;index<length;index++) {
                        var newTab = handles[index];
                        browser.switchTo().window(newTab).then(function () {
                            browser.driver.getCurrentUrl().then(value => {
                                console.log("Printing current url::"+value);
                                if(value.includes("limits")) {
                                    console.log("found limits");
                                }
                            })
                        });
                    }
                });

相关问题