4

我需要打开多个具有相同 id 的 ngDialog,当单击关闭按钮时,它应该只关闭当前打开的 ngDialog。

为了关闭 ngDialog,我需要调用一个事件来收集数据然后关闭 ngDialog。

4

5 回答 5

8

这取决于您是尝试关闭它(1)从它自己的控制器,还是(2)实例化它的控制器:

(1) 从它自己的控制器:

scope.closeThisDialog(value);

见文档:https ://github.com/likeastore/ngDialog

(2) 从实例化它的控制器:

var dialog = ngDialog.open(); 
// for closing the dialog call dialog.close()

正如萨蒂什萨尔瓦多的回应所提到的。

干杯!

于 2016-10-17T18:15:42.323 回答
3

将 ngDialog.open() 分配给一个变量,例如var dialog = ngDialog.open();关闭对话框调用dialog.close()

于 2015-11-25T10:27:32.883 回答
1

在某些情况下,您可以通过在创建对话框时指定 disableAnimation 选项来避免此问题:

ngDialog.open({
  template: 'template.html',
  appendClassName: 'ngdialog-custom',
  disableAnimation: true
});
于 2016-05-12T22:08:45.853 回答
1

你可以使用.getOpenDialogs()

对象上有一个ngDialog名为的方法getOpenDialogs。您可以使用此功能获取所有已打开对话框的列表,并通过调用.close()“选定”对话框关闭您感兴趣的对话框。

于 2017-06-02T13:26:37.070 回答
0

除了closeThisDialog()你可以做:

vm.myDialog = ngDialog.open(... omissis ...);
...
vm.myDialog.close();

或者

vm.myDialog = ngDialog.open(... omissis ...);
...
ngDialog.close(vm.myDialog.id);    
于 2018-02-06T14:58:41.007 回答