0

我希望能够在模式外部单击以将其关闭,但找不到阻止 clickOutsideToClose 事件传播的方法。到目前为止,我已经尝试过 OnRemoving,它会在模式关闭时调用,但 event.stopImmediatePropagation() 不会阻止模式关闭。

$scope.openModal = function(){
            $mdDialog.show({
                templateUrl: 'app/summary/example.modal.html',
                parent: angular.element(document.body),
                clickOutsideToClose: true,
                fullScreen: true,
                locals:{
                    step: {name: 'openingPage'}
                },
                controller : function($scope, step){
                    $scope.step = step;
                },
                onRemoving: function(event, removePromise){
                    console.log('OnRemoving called');
                    event.stopImmediatePropagation();
                }
            }).then(function(){
                console.log('inside success function of show then');
            }, function(){
                ExampleFactory.clearAll();
            });
        };

我正在使用范围变量 step 在模式页面之间移动,因此我希望能够在 clickOutsideToClose 事件发生时为确认页面设置它。实际上关闭模式会发生在带有是/否按钮的确认页面上。

<md-dialog class="exampleModal">
    <md-dialog-content>
        <div ng-switch="step.name">
            <opening-page ng-switch-when="openingPage" step="step"></opening-page>
            <confirmation-page ng-switch-when="confirm" step="step"></confirmation-page>
        </div>
    </md-dialog-content>
</md-dialog>
4

0 回答 0