【问题标题】:Restangular: Error: Unknown providerRestangular:错误:未知的提供者
【发布时间】:2016-06-20 11:49:24
【问题描述】:

我想在我的应用程序中注入 Restangular 以通过 REST 进行通信。

所以,这里我知道一个错误:

Error: [$injector:unpr] Unknown provider: RestangularProvider <- Restangular <- Api

Api 是我自己的模块。我在做什么:

  1. 创建一个名为 Dashboard 的主模块
  2. 创建一个名为 API 的子模块

现在我想使用 Restangular,但不知道 Angular 是如何管理依赖关系的...

这是我注入 Restangular 的子模块:

angular.module( 'dashboard.api', ['restangular']).factory('Api', ['$http', 'Config', 'Restangular', function($http, Config, Restangular) {

我的主模块 Dashboard 不需要注入 Restangular 吧?

angular.module( 'dashboard', [ 'dashboard.api'])

注入依赖在子模块中是如何工作的?我怎样才能 在我的应用中集成 Restangular?

编辑:源文件包括:

【问题讨论】:

  • 你添加了 angular-resource.js 文件吗?
  • 是的,我已经编辑了我的问题
  • 你使用的restangular模块是什么?
  • 这也可能由于dashboarddashboard.api 模块的重新声明而发生。确保每个模块只调用一次模块声明 api(需要 2 个参数)。
  • @Chandermani 你能进一步解释一下吗?我有一次 app.module('dashboard'),然后是模块dashboard.api,也只有一次。不过,我还有其他子模块(dashboard.utils)。但这不应该影响仪表板模块,不是吗?

标签: angularjs restangular


【解决方案1】:

好的,我找到了问题和解决方案。

您必须区分restangular(模块)和Restangular 服务。

首先,您必须将restangular的主模块包含到您的应用中:

对我来说,就是这个(polygon 是我的应用程序的一个子模块:

angular.module('polygons', ['restangular']);

然后,我想将restangular注入该子模块的工厂:

angular.module('polygons').factory('polygonService', ['Restangular', polygonService]);

function polygonService(Restangular) {
// ...
});

这对我有用。希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2013-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-21
    相关资源
    最近更新 更多