TypeScript模态对话框承诺响应

时间:2018-06-14 08:26:12

标签: javascript typescript promise

我的应用程序中有一个显示Bootstrap对话框的服务。目前代码非常简单:

async showConfirmation(message: string): Promise<boolean> {

    this.message(message);
    this.isPopupOpen(true);

    return false;
}

目前对话框HTML看起来像这样:

<div role="dialog" aria-hidden="true" class="modal fade" data-bind="modal: { show: isPopupOpen }">
  <div class="modal-dialog modal-lg">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" title="Close" aria-label="Close">&times;</button>
        <h4 class="modal-title">My Modal</h4>
      </div>

      <div class="modal-body" data-bind="text: message"></div>

      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal" data-bind="click: close">Cancel</button>
        <button type="button" class="btn btn-primary" data-dismiss="modal" data-bind="click: close">OK</button>
      </div>
    </div>
  </div>
</div>

我的视图模型中的关闭处理程序也非常简单,如下所示:

close(data, event) {

    //console.debug(data);
    console.debug(event.target);

    this.isPopupOpen(false);
}

目前showConfirmation函数会立即返回硬编码false,而我想等待用户响应,并将其作为showConfirmation的结果返回。

我不完全确定实现这一目标的最佳方法。如何让这个等待用户才能返回相应的响应?

0 个答案:

没有答案