繁体   English   中英

AngularJS:解析中的变量未注入控制器(未知提供程序)

[英]AngularJS: var in resolve is not injected in controller (unknown provider)

解析器中出现var“ frameworks”的未知提供程序错误,这是什么问题? 谢谢! FrameworkService.loadFrameworks()从REST服务返回一个JSON数组。

app.js

$routeProvider.when('/', {
    templateUrl : "views/admin.html",
    controller : "FrameworkController",
     resolve : {
        frameworks : function(FrameworkService) {
            return FrameworkService.loadFrameworks();
        }
    }
});

FrameworkController.js

angular.module('app.controllers', []).controller(
    'FrameworkController',
    [ '$scope', 'FrameworkService', 'frameworks',
            function($scope, frameworks) {
                $scope.frameworks = frameworks;
            } ]);

错误

Error: [$injector:unpr] Unknown provider: frameworksProvider <- frameworks

编辑

这里显示的代码还可以! 问题出在FrameworkService中,它执行异步http请求,因此未注入var框架。

您的模块中没有框架提供程序,因此注入器无法给您提供。 您需要创建一个服务,工厂等。这取决于您的需求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM