我正在使用aurelia-dialog来显示帐户的详细信息。
我见过的aurelia-dialog的所有示例都涉及到将整个对象传递给对话框,并使用该对象作为对话框的视图模型。我想要做的是传递ID并运行一个AJAX调用来获取详细数据。
让它工作起来很简单,但是当我在对话框的视图模型上从activate调用返回一个promise时,直到promise被解析,对话框才会显示。这太糟糕了,因为会有延迟。
我希望对话框立即显示,并显示一个微调器,直到承诺解决。有没有简单的方法可以做到这一点?有没有人看过或做过这个?
发布于 2016-10-26 04:10:15
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>https://stackoverflow.com/questions/40246293
复制相似问题