【问题标题】:Aurelia Dialog: Show Wait Spinner During Async ActivateAurelia 对话框:在异步激活期间显示等待微调器
【发布时间】:2016-10-25 17:38:37
【问题描述】:

我正在使用 aurelia-dialog 来显示帐户的详细信息。

我看到的所有关于 aurelia-dialog 的示例都涉及将整个对象传递给对话框并将该对象用作对话框的视图模型。我想要做的是传递 ID 并运行 AJAX 调用以获取详细数据。

让它工作起来很简单,但是当我从对话框的视图模型上的activate 调用返回一个承诺时,在承诺解决之前,对话框根本不会显示。太可惜了,因为有延迟。

我希望立即显示对话框并显示微调器,直到承诺解决。有没有一种简单的方法可以做到这一点?有人见过或做过吗?

【问题讨论】:

  • the dialog doesn't display at all until the promise is resolved 这是您可以返回任何东西的预期设计,它会显示。在这种情况下,您只需在承诺解决时标记一些东西。

标签: aurelia aurelia-dialog


【解决方案1】:

the dialog doesn't display at all until the promise is resolved 这是预期的设计,你不能返回任何东西,它会显示。在这种情况下,您只需在 promise 解决时标记某些内容。

export class MyDialogVM {
  showSpinner = false;
  // ...
  activate(id) {
    this.showSpinner = true;
    this.http.get(`/my-api/${id}`).then(result => {
      this.showSpinner = false;
    });
  }
}

还有你的对话框视图

<template>
  <!-- other stuff -->
  <i class="fa fa-spinner fa-spin" show.bind="showSpinner"></i>
  <!-- other stuff -->
</template>

【讨论】:

    猜你喜欢
    • 2018-05-09
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多