簡體   English   中英

如何在 promise 之后調用 function

[英]How to call a function after promise

JavaScript 菜鳥在這里。 缺乏對重要設計模式的了解。

this.getEventData(); < 在 promise 解決后,我怎么能稱它為 function? 那么我可以刪除 noobie setTimeout 嗎?

  public onInit(): Promise<void> {
    return super.onInit().then(_ => {
      new Promise<void>((resolve: () => void, reject: (error: any) => void): void => {
        this.context.aadHttpClientFactory
          .getClient(APIAppRegID)
          .then((client: AadHttpClient): void => {
            this.httpClient = client;
            resolve();
          }, err => reject(err));
      });
      setTimeout(() => {
        this.getEventData();
      }, 1500);
    });
  }

promise 沒有任何意義。 你沒有使用它。 您可以刪除它:

public onInit(): Promise<void> {
  return super.onInit().then(_ => {
    this.context.aadHttpClientFactory
      .getClient(APIAppRegID)
      .then((client: AadHttpClient): void => {
        this.httpClient = client;
        this.getEventData();
      });
  });
}

async/await版本:

async onInit(): Promise<void> {
  await super.onInit();
  this.httpClient = await this.context.aadHttpClientFactory.getClient(APIAppRegID);
  this.getEventData();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM