Files
angular.js/README.closure.md
T
Peter Bacon Darwin 4cc7701700 docs(*): ensure naming is correct for Angular(JS) versions
This was originally done on the master branch in
commit 03043839d5,
but never back-ported to 1.6.x.

That wasn't a big deal because docs.angularjs.org
served the master snapshot docs. However, now we
serve the 1.6.x snapshot docs, and it looks strange
that the official docs have the wrong branding :).
2018-02-02 11:10:17 +01:00

927 B

Using AngularJS with the Closure Compiler

The Closure Compiler project contains definitions for the AngularJS JavaScript in its contrib/externs directory.

The definitions contain externs for use with the Closure compiler (aka JSCompiler). Passing these files to the --externs parameter of a compiler pass allows using type annotations for AngularJS objects. For example, AngularJS's $scope objects can be annotated as:

/** @type {angular.Scope} */
var scope = $scope;

This allows JSCompiler to type check accesses to scope, give warnings about missing methods or incorrect arguments, and also prevents renaming of property accesses with advanced compilation.

The externs are incomplete and maintained on an as-needed basis, but strive to be correct. Externs for individual modules should be added in separate files.

See https://developers.google.com/closure/compiler/