【问题标题】:AngularJS and resource : Unknown provider: $resourceProvider <- $resourceAngularJS 和资源:未知提供者:$resourceProvider <- $resource
【发布时间】:2013-09-25 15:26:22
【问题描述】:

我正在使用 $resource 显示一个 json 列表文件,并想知道它为什么会生成错误消息:

 Unknown provider: $resourceProvider <- $resource

代码如下:

HTML:

 <div ng-app="manage">
 .....

   <div class="widget-content" ng-controller="testCtrl">
    {{test}}
   </div>

app.js

 angular.module('manage',['ngResource']);

和控制器.js

 function testCtrl($scope,$resource) {
   var dataService = $resource('/users/1/test.json');
   $scope.test = dataService.get();
 }

似乎它在 plunkr http://plnkr.co/edit/bJfJurl6Gtw3qRcn4ViW?p=preview 上运行良好 但不在我的应用程序上。 我使用完全相同的结构..(即使加载角度和角度资源文件顺序)

我能注意到的唯一区别是 angularJS 版本(我在我的应用程序上使用 1.0.2),当然还有 json 文件。

我做错了什么?

更新:

我在 plunkr 上更改了角度版本。现在两边都一样

【问题讨论】:

  • 您必须为 ngResource 获得相同的版本!检查一下……也许就是这么简单。
  • 你的ngResource插件是什么版本的?
  • 啊angular-resource.js也是1.0.2
  • :) 也正如您指出的那样,我没有提到该应用程序会在页面底部加载所有 js 文件(角度和 co。)。会是这个吗?

标签: angularjs


【解决方案1】:

好的,刚刚找到它! 问题是我的应用程序中有 2 个角度模块。在 html 标签上,我有一个管理 Bootstrap 和 jQuery UI 的整个应用程序,并且在这个模块的特定部分。

如果我们不在主应用模块上添加ngResource,就会出现这个错误,但是如果我们定义这个

<html ng-app="ui">
......
<div ng-app="manage">

在 Angular app.js 中

 angular.module('ui', ['ui.bootstrap','ui.sortable', 'ngResource']);

 angular.module('manage', ['ngResource']);

然后就可以了!

我在 Angular Docs 中找不到任何解释这一点的东西。但总的来说非常感谢帮助我的@Thomas :)

【讨论】:

  • 哦,你有两个模块,哈哈,我以为你只有一个!接受你的正确答案。但是最后一个问题:管理模块是 ui 模块的依赖项?
  • 我没有把它定义为依赖。我应该吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 2019-10-20
相关资源
最近更新 更多