微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何构建AngularJS控制器的实例?

由于所述文件的大小和复杂性,我已经开始将我的应用程序分解为单独的文件,完全基于angular-seed项目完成它的方式.

在这个重新分解过程中,我遇到了原始控制器构造方式的问题.其中一些,将注入模态对话框的那些被创建为实例.

var firstInstanceCtrl = ['$scope',function($scope) { code... } ];

var secondInstanceCtrl = ['$scope',function($scope) { code... } ];

并以这种方式在我的’主’控制器中使用

$scope.buttonClick = function (row) {

    var viewmodel = {};

    var modalinstance = $modal.open({
        backdrop: 'static',windowClass: 'modal-wide',templateUrl: 'modalFirst.html',controller: firstInstanceCtrl,resolve: {
            viewmodel: function () {
                return viewmodel;
            }
        }
    });

    modalinstance.result.then(function () {},function () { });
};

但是,现在注册控制器的方式,我没有看到如何获得实例的方法,例如

angular.module('myApp.controllers',[]).
controller('firstInstanceCtrl',[function() {

}])
.controller('secondInstanceCtrl',[function() {

}]);

所以我的问题是,“如何在主控制器内部获得子控制器的实例?”

解决方法

您可以使用用于注册控制器的名称

controller: 'firstInstanceCtrl',

$modal.open在内部使用$controller.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐