我有一个需要在应用程序的配置模块中调用的服务,但是当我尝试注入它时会出错。有任何想法吗?仅供参考-注入和执行此服务后,该服务在控制器中可以正常工作。
app.config(['$routeProvider', 'myService', function($routeProvider, myService) {
var controller = myService.getSomeValue() ? 'FirstController', 'SecondController';
$routeProvider
.when('/', {
'templateUrl': '/myTemplate.html'
'controller': controller
})
});
由于以下原因,无法实例化模块应用程序: 错误:[$ injector:unpr] http://errors.angularjs.org/1.5.7/$injector/unpr?p0=myService
答案 0 :(得分:0)
AngularJS框架分为两个阶段运行,即配置阶段和运行阶段。在配置阶段只能注入提供者对象。服务只能在运行阶段注入。
从文档中:
module.config(configFn);
使用此方法通过注入服务providers来配置服务,例如用于向$routeProvider添加路由。
请注意,您只能将providers和constants 注入此功能。
有关如何配置服务的更多信息,请参见Provider Recipe。
有关更多信息,请参见