簡體   English   中英

從離子彈出窗口中打開離子模態

[英]Open ionic modal from ionic popup

如何從PopupControllerModalController調用openAddCardModal()

function PopupController($scope, $ionicPopup, $timeout, $state) {
   $scope.showPaymentOptionsPopup = function() {
        $ionicPopup.confirm({
            title: 'Payment Options',
            cssClass: 'popup-vertical-buttons',
            buttons:[    
            {
                text: "Add",
                type: 'button-positive',
                onTap: function(){
                    // call openAddCardModal();
                }
            },
            {
                text: "Edit",
                type: 'button-positive',
                onTap: function(){
                }
            },
            {
                text: "Close",
                type: 'button-dark',
                onTap: function(){
                }
            }
            ]
        });
    }; 
}

function ModalController($scope, $ionicModal, $stateParams) {
    // addCardModal() 

    $ionicModal.fromTemplateUrl('views/payment-add-card.view.html', {
        scope: $scope,
        animation: 'slide-in-up'
    }).then(function(modal) {
        $scope.addCardModal = modal;
    })

    $scope.openAddCardModal = function() {
        $scope.addCardModal.show()
    }

    $scope.closeAddCardModal = function() {
        $scope.addCardModal.hide();
    };

    $scope.$on('$destroy', function() {
        $scope.addCardModal.remove();
}

使用AngularJS 服務設置控制器之間的通信

閱讀此內容: 與angular js中的控制器通信

您的服務如下所示:

function ServiceName(){
    var serviceFunction;

    return {
        set: function(funcFromCtrl){
            serviceFunction = funcFromCtrl;
        },
        call: function(){
            serviceFunction();
        }
    }
})

和控制器:

function PopupController($scope, $ionicPopup, $timeout, $state, ServiceName) {
    ...
        onTap: function(){
            ServiceName.call();
        }
    ...
}

function ModalController($scope, $ionicModal, $stateParams, ServiceName) {
   ...
       ServiceName.set($scope.openAddCardModal);
   ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM