【发布时间】:2016-09-30 12:43:40
【问题描述】:
如果已经打开了一个模式,我的应用程序可以打开一个模式。如果是这种情况,我想关闭该模式并在完成后打开新模式。
打开模态的服务:
app.service('ModalService', function($uibModal) {
this.open = function(size, template, content, backdrop, controller) {
var modalInstance = $uibModal.open({
animation: true,
templateUrl: content,
windowTemplateUrl: template,
controller: controller,
backdrop: backdrop,
size: size,
resolve: {}
});
return modalInstance;
};
然后我打开一个:
var m = ModalService.open('lg', '', 'ng-templates/modal.html', true, 'ModalController');
我可以关闭它:
m.close();
我只能在打开模式时在同一个开关/案例中使用 m.close()。如果我想在代码后面的另一个 if 语句中关闭它,则 m 未定义。
无论如何。我可以检查模式是否打开吗?如果我 console.log(m) 是这样的:
d.$$state.status = 1
d.$$state.value = true
但我无法在应用程序的其他位置访问变量 m,因此无法检查。
【问题讨论】:
标签: javascript angularjs angular-ui-bootstrap angular-ui