1

我有三個不同的控制器和視圖模式彈出不打烊如果多個情態動詞的存在

從屏幕按鈕被點擊Modal1當打開

$modal.open({ 
    templateUrl: 'abc.html', 
    controller: 'abcCtrl', 
    size: 'lg', 
    scope: $scope, 
}); 

在modal1旁邊有個按鈕,點擊的下一步按鈕想要關閉Modal1並打開Modal2

$scope.validate = function(isValid) { 
    if (!isValid) { 
     $scope.errors = 'Please fill-up required fields'; 
    } else { 
     $scope.errors = ''; 
     $modal.open({ 
      templateUrl: 'Payment.html', 
      controller: 'PaymentCtrl', 
      size: 'lg', 
      scope: $scope, 
     }); 
    } 
}; 

在modal2中有下一個按鈕等等點擊下一步按鈕想要關閉Modal2和開放Modal3

$scope.placeOrder = function() { 
     $scope.cart.abc().then(function(result) { 
       $modal.open({ 
        templateUrl: 'orderSummary.html', 
        controller: 'SummaryCtrl', 
        size: 'lg', 
        scope: $scope, 
        resolve: { 
         items: function() { 
          return result.data; 
         } 
        } 
       }); 
      }, 
      function(err) { 
       //error msg 
      }); 
}; 

如果我modalInstance.close加$到Modal1 而打開另一個模式是Modal2,Modal1關閉,Modal2被打開,但沒有任何按鈕都不起作用。 Modal3不會被打開不知道發生了什麼實際的問題。

請幫幫我。提前致謝。

+0

你有多個模態的實例嗎? –

回答

0

從主控制器首先打開你的Modal1,對Modal1的關閉即

var modalInstance = $modal.open({ 
       templateUrl: 'abc', 
       controller: 'abcCtrl', 
       size: 'lg', 
       scope: $scope, 
      }); 

      modalInstance.result.then(function(result) { 
        $scope.def(); 
       }, function(err) { 
       // 
      }); 

    $scope.def = function(){ 
    //open another 
    } 

調用另一個函數並在該功能中打開另一個模式,並且類似地您可以執行此操作。