繁体   English   中英

Angular UI Bootstrap Modal在后台单击时将数据传递回父控制器/ ESC键盘关闭

[英]Angular UI Bootstrap Modal pass data back to parent controller on background click / ESC keyboard close

大家。

从问题开始-如何在用户的背景单击或ESC按钮键盘触发时从AngularJS UI Boostrap Modal传递回变量?

有一些防止用户这样做的解决方案: 如何防止angular-ui模态关闭?

但就我而言,我认为这会使用户陷入困境,因为只有一个btn会触发$uibModalInstance.close($scope.choosenLocationLatLng); 行动。 所以我想如果可能的话也将变量传递回后台单击和ESC键盘btn。

$ uibModal的关闭事件可以被捕获并用于与父控制器进行通信。

//main controller
var modalInstance = $uibModal.open({
  templateUrl: 'a-template.html',
  controller: ['$scope','$rootScope', function($scope, $){
    //This goes in modal ctrl
    //----------------------------------------------------------
    $scope.$on('modal.hide', function(event, reason, closed){
           $scope.$on("modal.closing",function(){
           $rootScope.$broadcast("modalClosing",$scope.latLong);
     });
    }
    //---------------------------------------------------------
  }],
  controllerAs: 'modal',
  size: 'lg'
});
$scope.$on('modalClosing',function(value){
  //value is the latlong set in modal
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM