2

我正在尝试在 angular.js 应用程序的配置部分中配置当前用户,但出现以下错误:

Error: Unknown provider: $resource from manyminds

这就是我传递资源的方式:

myApp.config(function($routeProvider, $resource) {

我在包含 app.js 之前包含资源文件

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/angular-resource.js"></script>
<script src="assets/js/app.js"></script>

将 $resource 传递给我的任何控制器时,我都没有收到该错误 - 仅在将其传递给 config. 我不能在配置中使用 $resource 吗?

4

1 回答 1

3

关于模块的 AngularJS 文档(“模块加载和依赖”部分):

配置块- 在提供者注册和配置阶段执行。只有提供者和常量可以注入到配置块中。这是为了防止在完全配置之前意外实例化服务。

因此,例如,您可以注入$routeProvider一个config块,但不能注入$route.

如果您需要在路由更改之前向控制器提供信息,您可以考虑使用resolve; $routeProvider.when如果您将函数分配给resolve,Angular 将确保在运行该函数时注入该函数(就像控制器一样);如果你分配一个字符串,Angular 会找到同名的可注入对象并注入它。

于 2013-05-01T16:25:31.823 回答