diff options
| author | Pete Bacon Darwin | 2013-11-20 10:35:27 +0000 | 
|---|---|---|
| committer | Igor Minar | 2013-11-21 22:51:26 -0800 | 
| commit | 9e89a31b129e40c805178535c244899ffafb77d8 (patch) | |
| tree | 15dd79635457a8a4e16130149e101420983d9fe1 | |
| parent | e6521e7491242504250b57dd0ee66af49e653c33 (diff) | |
| download | angular.js-9e89a31b129e40c805178535c244899ffafb77d8.tar.bz2 | |
fix(loader): expose `$$minErr` to modules such as`ngResource`
This is highlighted in angular-phonecat when you try to use the index-async.html
which needs to load the ngResource module asynchronously but fails when it tries
to call `angular.$$minErr` to create the $resourceMinErr object.
Closes #5050
| -rw-r--r-- | src/loader.js | 7 | ||||
| -rw-r--r-- | test/loaderSpec.js | 4 | 
2 files changed, 10 insertions, 1 deletions
| diff --git a/src/loader.js b/src/loader.js index b8d50917..787fcbfa 100644 --- a/src/loader.js +++ b/src/loader.js @@ -17,7 +17,12 @@ function setupModuleLoader(window) {      return obj[name] || (obj[name] = factory());    } -  return ensure(ensure(window, 'angular', Object), 'module', function() { +  var angular = ensure(window, 'angular', Object); + +  // We need to expose `angular.$$minErr` to modules such as `ngResource` that reference it during bootstrap +  angular.$$minErr = angular.$$minErr || minErr; + +  return ensure(angular, 'module', function() {      /** @type {Object.<string, angular.Module>} */      var modules = {}; diff --git a/test/loaderSpec.js b/test/loaderSpec.js index 2a564115..816e0a10 100644 --- a/test/loaderSpec.js +++ b/test/loaderSpec.js @@ -78,4 +78,8 @@ describe('module loader', function() {        window.angular.module('hasOwnProperty', []);      }).toThrowMinErr('ng','badname', "hasOwnProperty is not a valid module name");    }); + +  it('should expose `$$minErr` on the `angular` object', function() { +    expect(window.angular.$$minErr).toEqual(jasmine.any(Function)); +  })  }); | 
