Angular 给我一个注入未解决的错误,但我的控制器没有要求任何注入

Angular is giving me an injection unresolved error, but my controller isn't asking for any injections

我有一个有问题的模态控制器,所以我一直在注释代码以试图找出问题所在。目前,我的模态 HTML 部分是一个空的 div 标签,我的控制器是一个 console.log,没有参数。 $modal.open 调用仅指定控制器和部分。

现在,当我尝试打开模式时,我收到一个注入器错误,指出 'orgId' 没有解决。除了我不要求注入 orgId 之外。我已经清除了缓存 (Chrome),确保我 运行 是文件的正确最新版本,并删除了单词 [=30= 的所有(注释或未注释)实例] 从文件中。然而它一直在要求它。作为模态控制器,它不在我的 router-ui 状态层次结构中,所以它不应该是任何奇怪的父子交互。关于可能发生的事情的任何其他想法?

我的代码是这样的:

Partial.html:
<div></div>

控制器:
app.controller( 'ctrl.modal', [ function () { console.log("Controller is called"); } ] )

调用控制器:

    exercises.controller( 'ctrl.exercisesnew', [ '$scope', '$location', '$stateParams', 'factory.exercises', 'force.services.userservice', '$q',
        '$resource', 'factory.endpoints', '$modal', 'underscore', 'force.factory.classes.usercontext', 'factory.common', 'force.services.unitservice', '$state', 'factory.teep', '$window',
        function ( $scope, $location, $stateParams, ExercisesServices, UserService, $q, $resource, endpoints, $modal, _, UserContext, commonService, UnitService, $state, TeepService, $window ) {
            $scope.c2ram.ctrl.exercisesnew.absorb = function () {
                var assignExerciseDetailsModalInstance = $modal.open( {
                    templateUrl: 'partial.html',
                    controller: 'ctrl.modal'
                } );
            };

        }
    ] );

非常感谢!

您在使用 ui-bootstrap 吗?如果是,则必须将 $modal 注入控制器才能使用它。

所以这太尴尬了。基本上,当我将模态控制器从之前的位置复制并粘贴时,我忘记删除旧的(字符串命名的)控制器。 Angular 在打开模态时在两个同名模态控制器之间随机选择,并且没有警告我该名称的控制器已经存在。哎呀!

对于那些正在阅读此答案的人,请检查以确保您没有任何会导致冲突的同名控制器。这可能是任何复制和粘贴错误的结果。