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

前端之家收集整理的这篇文章主要介绍了错误:[$inject:unpr]未知的提供者:在AngularJS服务测试中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为AngularJS服务正确提供依赖关系带来很多麻烦。

我在StackOverflow上看到一些其他类似错误的帖子,但没有一个似乎解决了这个问题。

这里是应用程序代码

cm.modules.app = angular.module('myApp',['ngRoute','ngAnimate']);
myServiceName = function($http) {
    // do stuff
};
myServiceName.prototype.value = 1;

cm.modules.app.service('defaultAlertFactoryA',myServiceName);

以下是测试代码

describe('test alertFactoryA',function() {
  var $provide;
  var mAlertFactoryA;

  beforeEach(module(cm.modules.app));

  beforeEach(angular.mock.module(function(_$provide_) {
    $provide = _$provide_;
  }));

  beforeEach(function() {
    inject(function($injector) {
      mAlertFactoryA = $injector.get('defaultAlertFactoryA');
    });
  });

  it('should work',function() {
    expect(true).toBe(true);
  });
});

这里是错误

Error: [$injector:unpr] Unknown provider: defaultAlertFactoryAProvider
<- defaultAlertFactoryA
07000$injector/unpr?p0=defaultAlertFactoryAProvider%20%3C-%20defaultAlertFactoryA

问题:如何解决这个问题,以便测试通过?

为了引导您的模块,您需要提供其名称
beforeEach(module('myApp'));

Demo

猜你在找的Angularjs相关文章