我找不到方法来标题这个问题,所以如果你可以建议一个更好的方式,请让我知道。无论如何,我的问题(S)。Angular.ui莫代尔不关闭或取消
我在用户想要注销时实现了一种模式。用户点击注销图标。图标调用了一个带有注销功能的模态在我的控制器是这样的:
<li ng-controller="modalController">
<a href="" class="mb-control" ng-click="logout();" ><span class="fa fa-sign-out"></span></a>
</li>
我modalController看起来像这样
app.controller('modalController', ['$scope', '$location', '$uibModal', '$log', function($scope, $location, $uibModal, $log, $uibModalInstance) {
$scope.logout = function(){
$uibModal.open({
templateUrl: 'views/partials/logoutMsg.html'
});
$scope.ok = function() {
$uibModalInstance.close();
$location.path('/login');
};
$scope.cancel = function() {
$uibModalInstance.dismiss();
};
};
}]);
我的模式模板有这它:
<div class="mb-container">
<div class="mb-middle">
<div class="mb-title"><span class="fa fa-sign-out"></span> Log <strong>Out</strong> ?</div>
<div class="mb-content">
<p>Are you sure you want to log out?</p>
<p>Press No if you want to continue work. Press Yes to logout current user.</p>
</div>
<div class="mb-footer">
<div class="pull-right">
<button class="btn btn-primary mb-control-close" ng-click="cancel()">No</button>
<button ng-click="ok()" class="btn btn-success">Yes</a>
</div>
</div>
</div>
</div>
ps我的参考调用Angular Bootstrap和我的控制器在我的index.html中检查。我在我的angular.module中也包含了ui.bootstrap。实际上,在我的控制台中没有错误指出任何缺失的依赖关系或注入不良。
的问题
模态做开,但是当我点击按钮不会关闭或模式的区域之外。我不仅希望它消失,而且
Yes
按钮应该重定向到/ login页面,并且模式将被解除。No
按钮只是驳回了模式。在模态区域外单击也会取消模态。模态一遍又一遍地打开多次,因为我点击注销图标。这是伟大的,它会打开它,但一旦足以谢谢你笑
优秀的解决方案!谢谢! Angular非常年轻,除了基本的东西外,其实并没有那么多的帮助。任何想法如何阻止图标调用模态,一旦它已经打开?这不是在你的小提琴中发生,但它发生在我身上 – LOTUSMS
好的,我发现,要停止产生更多模态调用的背景,它必须通过在函数中添加'modal:true'来禁用它。并确保没有项目的z-index高于模态,尤其是带有负责进行模态调用的图标。 – LOTUSMS