javascript - 未知提供者错误、依赖注入(inject)、模态 Controller

标签 javascript angularjs

我正在尝试构建一个自定义模态服务来接受数据并使用这些输入生成一个模态;但是,当将 Controller 的文字标识符传递给模式的 controller 属性时,我收到未知提供程序错误 is Angular。

我的应用程序中的其他地方有依赖注入(inject);它只是在这里失败了。我知道,关于处理这个问题有很多问题;然而,在我读过的文章中,我无法找到更通用的答案来为我指明正确的方向。

这是我的服务代码:

angular.module('app').service('CustomModalService', ['$uibModal', function ($uibModal) {

    this.openCustomModal = function (size, title, message, action) {
        var actionToPerformOnConfirm = action;

        var modalInstance = $uibModal.open({
            templateUrl: 'templates/CustomModal.html',
            controller: 'CustomModalInstanceController',
            controllerAs: 'vm',
            size: size,
            resolve: {
                content: function () {
                    return {
                        title: title,
                        message: message
                    };
                }
            }
        });

        modalInstance.result.then(function (actionToPerformOnConfirm) {
            console.log('something happened');
        }.bind(this));
    };
}]);

这是上面提到的模态 Controller :

angular.module('app').controller('CustomModalInstanceController', function ($uibModalInstance, content) {
    var vm = this;

    vm.title = content.title;
    vm.message = content.message;

    $scope.confirmAction = function () {
        $uibModalInstance.close();
    };

    $scope.cancelAction = function () {
        $uibModalInstance.dismiss('cancel');
    };
});

根据我对 Angular 的理解,这应该足够了。 如果 Controller 引用被删除,则此服务中的一切正常,否则

甚至还有this question (我遇到的所有问题的一个很好的总结)证实了文档和我在网上看到的大量示例;然而,我仍然收到未知提供商错误。该用户甚至询问same question (再次,从我所看到的,我的代码是“正确”的光辉例子)!

为了表明两者位于同一目录中,下面是目录结构的图片:

enter image description here

我需要从哪里开始着手解决这个问题?这是应用程序配置问题吗?

最佳答案

我要回答我自己的问题,非常感谢 Manu Antony 与我一起工作。问题不在于 Controller 的注入(inject)本身,而在于提供给 Controller 的参数。

最后,这是我的语法错误。

这是正确的 Controller 签名语法(我添加了有趣的范围):

angular.module('app').controller('CustomModalInstanceController', ['$scope', '$uibModalInstance', 'content', function ($scope, $uibModalInstance, content) { ...

关于javascript - 未知提供者错误、依赖注入(inject)、模态 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35435406/

相关文章:

javascript - 以适当的 Angular 将div分布在一个圆圈中

javascript - ng-model 没有因 select 中的选择更改而更新

javascript - 在多个 url 字符串上使用 .indexOf

javascript - 当未完成所有字段时,如何创建确认表单提交的 JS 函数

javascript - Cytoscape 事件 cxtap 被多次调用

javascript - 使用 Javascript 类函数进行 15 次递归后堆栈溢出

javascript - 连接到 api nodeJS 和 mongoDB

javascript - 如何在 AngularJS 中使用 Jasmine 测试 $http

javascript - 如何在指令之外调用方法?

javascript - 尝试在带有 ui-router 的 angularjs 中使用嵌套 View 得到一个空白页面