关闭一个durandal messageBox

时间:2014-01-27 01:25:37

标签: durandal

durandal messageBox非常方便,但是我没有看到以编程方式关闭它的方法(例如,如果用户点击后退按钮或任何其他触发canDeactivate()的场景,我可能需要这样做)。

如何以编程方式关闭邮箱?

作为替代方案,允许我关闭所有打开的对话框(无论是通过show()还是showMessage()触发)的方法也可以正常工作。

1 个答案:

答案 0 :(得分:0)

实际上,挖掘源代码有点让人非常明显。 showMessage只是使用了show,所以我们可以使用系统MessageBox构造函数来利用固定功能,同时仍然拥有VM的句柄,以防我们以后需要关闭它。 / p>

var vm = new dialog.MessageBox('message', 'title', ['option1', 'option2']);
dialog.show(vm);

//somewhere else - forcibly close the dialog
dialog.close(vm);