错误:未知提供者:$resourceProvider <- $resource <- myservice AngularJS 服务

Posted

技术标签:

【中文标题】错误:未知提供者:$resourceProvider <- $resource <- myservice AngularJS 服务【英文标题】:Error: Unknown provider: $resourceProvider <- $resource <- myservice AngularJS services 【发布时间】:2013-08-21 08:44:31 【问题描述】:

我收到此错误,我尝试了不同的方法,但仍然没有找到任何解决方案。 这是我的代码:

services.js

angular
.module('myApp.services',[])
.service('myservice', function($resource) 

  var pendings = $resource('myUrl2', methode: 'GET', isArray:true);
  var items; 

  var myPo='rawad al bo3bo3';
  var quantity;
  var barcode;

  return 
    getItems: function() 
      items = $resource('myUrl', methode: 'GET', isArray:true);

这是我的控制器:

angular
.module('myApp.controllers', [])
.controller('ReceiveCtrl', ['$scope','myservice', function ($scope,myservice)       

html:

<html lang="en" ng-app="myApp">
  <head>
    <meta charset="utf-8">
    <title>My AngularJS App</title>
    <!-- <link rel="stylesheet" href="lib/primeUI/prime-ui-0.9.5.css"> -->
  </head>
  <body>

    <ul class="menu">
      <li><a href="#/Receive">view1</a></li>
      <li><a href="#/Pending">view2</a></li>
    </ul>

    <div ng-view></div>

  </body>
</html>

在控制器中,我无法访问来自我的服务的变量...所以警报消息不起作用,我收到此错误

Error: Unknown provider: $resourceProvider <- $resource <- myservice

【问题讨论】:

【参考方案1】:

您必须包含angular-resource.js 文件并加载ngResource 模块:angular.module('app', ['ngResource'])

有关更多详细信息,请查看$resource 服务文档中的“安装”部分:http://docs.angularjs.org/api/ngResource.$resource

【讨论】:

所以在这里我有一个小问题,因为我是 angular 的新手...文件 angular-resource.js 存在于文件夹 angular... 但是如何加载它?如果可以的话,你能帮我吗? 只需要它作为 index.html 页面中的常规 javascript 文件;) 这很奇怪,因为我遇到了同样的错误......错误:未知提供者:$resourceProvider 从 CDN 包含:&lt;script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.3/angular-resource.js"&gt;&lt;/script&gt;【参考方案2】:

服务模块也需要资源。

 angular.module('myApp.services',[])

应该是

 angular.module('myApp.services',['ngResource'])

控制器还需要了解您的服务模块

angular.module('myApp.controllers', [])

angular.module('myApp.controllers', ['myApp.services','myApp.filters', 'myApp.directives'])

从技术上讲,你的 motherModule 不需要 myApp.services 只需要 myApp.controllers

angular.module('myApp', ['myApp.services','myApp.filters', 'myApp.directives' 'myApp.controllers']).  

angular.module('myApp', ['myApp.controllers']).  

【讨论】:

以上是关于错误:未知提供者:$resourceProvider <- $resource <- myservice AngularJS 服务的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS 错误:$injector:unpr 未知提供者

错误:未知提供者:aProvider <- a

错误:[$injector:unpr] 未知提供者:在 AngularJS 服务测试中

错误:[$injector:unpr] 未知提供者:$routeProvider,无法实例化模块 myApp,原因是

错误:[$injector:unpr] 未知提供者:$localStorageProvider <- $localStorage <- login

CHEF 服务器--错误:网络错误:getaddrinfo:提供节点名或服务名,或未知