我的应用程序中有一个显示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">×</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
的结果返回。
我不完全确定实现这一目标的最佳方法。如何让这个等待用户才能返回相应的响应?