0

アプリはモジュールで正常に動作しています。しかし、次のモックをビルドすると戻ります:

$global_vars is not defined

モジュールを適切に注入していないと思います。ここで何が欠けていますか?

describe('CalendarController', function() {
  beforeEach(module("$global_vars"));
  beforeEach(inject(function($rootScope, $controller, $location, $injector, $global_vars) {
    var $httpBackend;
    $httpBackend = $injector.get('$httpBackend');
    return this.controller = $controller(CalendarController, {
      $scope: this.scope,
      $location: $location,
      $global_vars: $global_vars
    });
  }));
  return it("can be instantiated", function() {
    return expect($global_vars).not.toBeNull();
  });
});

注: これは、バニラ js への coffeescript の翻訳です。

アップデート

わかりましたので、これを行うと、別の、おそらくより良いエラーが発生しますか?

Error: Unknown provider: $httpProvider <- $http <- $global_vars

.

describe 'CalendarController', ->

  beforeEach module("$global_vars")
  beforeEach module("GlobalService")
  beforeEach inject ($rootScope, $controller, $location, $injector) ->
    $injector = angular.injector [ '$global_vars' ]
    $global_vars = $injector.get('$global_vars')

    $global_vars = $injector.get('$global_vars')
    @controller = $controller CalendarController, {$scope: @scope, $location: $location}

私のbackbone.jsの最低限の骨

angular.module("VarsService", []).factory "$global_vars", ["$http", '$location', ($http, $location) ->  
  global_vars.get_calendar = ->
     console.log 'blam!'
4

0 に答える 0