Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了angularjs – 从子模态控制器(ui bootstrap)调用父控制器方法大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所以这里是我遇到麻烦的条件,它就像我有父控制器和一个儿童控制器,它是一个模态控制器,我有一个方法在父控制器,我想从儿童模态控制器调用,我不知道我失踪但是这就是我所尝试的.
App.controller('MailFolderController',['$scope','$http','$timeout','$stateParams','$window','mails','$interval',function ($scope,$http,$timeout,$stateParams,$window,mails,$interval) {


$scope.check = function(){
    console.log("call parent ==========>")
}


  App.controller('orderCancellationController','$modal',$modal) {

    $scope.open = function (mail) {
        var modalInstance = $modal.open({
            templateUrl: '/orderCancellationBox.html',controller: ModalInstanceCtrl,resolve: {
                mail: function () {
                    return mail;
                }
            }
        });
    };

    // Please note that $modalInstance represents a modal window (instancE) dependency.
    // it is not the same as the $modal service used above.

    var ModalInstanceCtrl = function ($scope,$modalInstance,mail) {

        $scope.mail = mail;
        $scope.submit = function () {
            $scope.$parent.check();
            $modalInstance.close('closed');
        };

        $scope.cancel = function () {
            $modalInstance.dismiss('cancel');
        };
    };
    ModalInstanceCtrl.$inject = ["$scope","$modalInstance",'mail'];

}]);


}]);

但它给了我一个错误没有这样的功能,我在检查方法上得到错误,我想从模态实例控制器调用此检查方法,但无法做,请帮助.

https://angular-ui.github.io/bootstrap/#/modal

bootstrap中的模态有一个’scope’选项,

使用范围:$scope应该允许您使用父控制器中定义的方法

例:

$scope.open = function (mail) {
    var modalInstance = $modal.open({
        templateUrl: '/orderCancellationBox.html',scope: $scope,resolve: {
            mail: function () {
                return mail;
            }
        }
    });
};

大佬总结

以上是大佬教程为你收集整理的angularjs – 从子模态控制器(ui bootstrap)调用父控制器方法全部内容,希望文章能够帮你解决angularjs – 从子模态控制器(ui bootstrap)调用父控制器方法所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。