aboutsummaryrefslogtreecommitdiffstats
path: root/src/Injector.js
AgeCommit message (Collapse)Author
2011-10-11chore(formating): clean code to be function() {Misko Hevery
2011-10-11refactor(injection) infer injection args in ng:controller onlyMisko Hevery
Because only controllers don't have currying, we can infer its arguments, all other APIs needing currying, automatic inference complicates the matters unecessary.
2011-09-01docs(API): various api doc fixes from ToniIgor Minar
2011-07-18feat(strict mode): adding strict mode flag to all js filesIgor Minar
the flag must be in all src and test files so that we get the benefit of running in the strict mode even in jstd the following script was used to modify all files: for file in `find src test -name "*.js"`; do echo -e "'use strict';\n" > temp.txt cat $file >> temp.txt mv temp.txt $file done
2011-07-18doc(angular.annotate): properly disable doc snippet to avoid compiler warningsIgor Minar
2011-07-18style(injector): remove extra semicolonIgor Minar
2011-07-16fix(doc): fix all broken linksIgor Minar
2011-07-06fix:injector: make injector compatible with Rhino (HtmlUnit)Mårten Dolk
2011-06-08Refactor injector to have invoke method for speed reasonsMisko Hevery
2011-06-06yet another docs batchIgor Minar
2011-06-06Fix wrong links in source codeVojta Jina
2011-03-28fixing lint warningsIgor Minar
2011-02-27adding an extra injector specIgor Minar
- added a spec for dependency graph resolution - also simplyfying cache presence check
2011-02-18replace smart-quotes with regular quotesMisko Hevery
2011-02-18Auto create $inject property form the argument names. Any arg starting with ↵Misko Hevery
$ or _ will be injected
2011-02-15split up services into individual filesIgor Minar
- split up services into files under src/service - split up specs into files under test/service - rewrite all specs so that they don't depend on one global forEach - get rid of obsolete code and tests in ng:switch - rename mock $log spec from "$log" to "$log mock"
2011-01-24fixed example rendering, add tests for it.Misko Hevery
2011-01-10Rename angular.foreach to angular.forEach to make the api consistent.Igor Minar
camelcase is used for other angular functions and forEach is also used by EcmaScript standard. - rename the internal as well as the external function name - tweak the implementation of the function so that it doesn't clober it self when we extend the angular object with an object that has a forEach property equal to this forEach function Closes #85
2011-01-07change to keydown from keyup; add delayed $updateViewMisko Hevery
- There was a perceived lag when typing do to the fact that we were listening on the keyup event instead of keydown. The issue with keydown is that we can not read the value of the input field. To solve this we schedule a defer call and perform the model update then. - To prevent calling $eval on root scope too many times as well as to prevent drowning the browser with too many updates we now call the $eval only after 25ms and any additional requests get ignored. The new update service is called $updateView
2011-01-04renaming service property $creation to $eagerIgor Minar
see changelog diff for more info
2011-01-04removing support for 'eager-published' servicesIgor Minar
2010-11-24docs for angular.injectorIgor Minar
2010-11-15generate keyword for searches; improved layout of docMisko Hevery
2010-10-12Introduced injector and $new to scope, and injection into link methods and ↵Misko Hevery
controllers - added angular.injector(scope, services, instanceCache) which returns inject - inject method can return, instance, or call function which have $inject property - initialize services with $creation=[eager|eager-publish] this means that only some of the services are now globally accessible - upgraded $become on scope to use injector hence respect the $inject property for injection - $become should not be run multiple times and will most likely be removed in future version - added $new on scope to create a child scope - $inject is respected on constructor function - simplified scopes so that they no longer have separate __proto__ for parent, api, behavior and instance this should speed up execution since scope will now create one __proto__ chain per scope (not three). BACKWARD COMPATIBILITY WARNING: - services now need to have $inject instead of inject property for proper injection this breaks backward compatibility - not all services are now published into root scope (only: $location, $cookie, $window) - if you have widget/directive which uses services on scope (such as this.$xhr), you will now have to inject that service in (as it is not published on the root scope anymore)