从角度$ uibModal背景返回数据单击

mrb*_*398 3 angularjs angular-ui-bootstrap bootstrap-modal

我试图从uibModal传回一个值.如果用户单击模态的关闭按钮,我可以定义返回

$scope.close = function () {
    $modalInstance.close($scope.editMade);
};
Run Code Online (Sandbox Code Playgroud)

但是,如果用户单击背景区域,则此操作无效.

如何为该特定事件定义返回值?

Rah*_*ora 8

当您点击外面的背景时,它会在内部进行解散.

尝试使用这个内部模态:

$modalInstance.dismiss($scope.editMade);
Run Code Online (Sandbox Code Playgroud)

并使用它来处理数据:

 instance.result.then(function(){
  //Get triggers when modal is closed
 }, function(){
  //gets triggers when modal is dismissed. You can basically handle data here
 });
Run Code Online (Sandbox Code Playgroud)

检查这个工作的plunker.它使用了我提到的解雇

http://embed.plnkr.co/YdWmqYPFBNbv4vhQZc4t/

在取消模态时将自定义数据传递给父控制器:

模态控制器中的代码:

  $scope.$on("modal.closing",function(){
       $rootScope.$broadcast("modalClosing",$scope.editMade);
  });
Run Code Online (Sandbox Code Playgroud)

然后在您的父控制器中:

 $scope.$on("modalClosing",function(event,value){
    console.log(value); //value should be $scope.editMade
  });
Run Code Online (Sandbox Code Playgroud)

您可以通过阅读以下文档了解更多信息:https: //github.com/angular-ui/bootstrap/tree/master/src/modal/docs