diff options
Diffstat (limited to 'src/service/window.js')
| -rw-r--r-- | src/service/window.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/service/window.js b/src/service/window.js new file mode 100644 index 00000000..2392e7f9 --- /dev/null +++ b/src/service/window.js @@ -0,0 +1,25 @@ +/** + * @workInProgress + * @ngdoc service + * @name angular.service.$window + * + * @description + * Is reference to the browser's `window` object. While `window` + * is globally available in JavaScript, it causes testability problems, because + * it is a global variable. In angular we always refer to it through the + * `$window` service, so it may be overriden, removed or mocked for testing. + * + * All expressions are evaluated with respect to current scope so they don't + * suffer from window globality. + * + * @example + <doc:example> + <doc:source> + <input ng:init="$window = $service('$window'); greeting='Hello World!'" type="text" name="greeting" /> + <button ng:click="$window.alert(greeting)">ALERT</button> + </doc:source> + <doc:scenario> + </doc:scenario> + </doc:example> + */ +angularServiceInject("$window", bind(window, identity, window), [], true); |
