aboutsummaryrefslogtreecommitdiffstats
path: root/src/service/route.js
AgeCommit message (Collapse)Author
2012-03-28chore(module): move files around in preparation for more modulesMisko Hevery
2012-03-20feat($route): when matching consider trailing slash as optionalIgor Minar
This makes for a much more flexible route matching: - route /foo matches /foo and redirects /foo/ to /foo - route /bar/ matches /bar/ and redirects /bar to /bar/ Closes #784
2012-03-13docs(links): corrected borken linksMisko Hevery
2012-03-12docs(*): renaming incorrect widget references to control or directiveIgor Minar
2012-03-09chore(*): refactor all ng: to ng-Igor Minar
2012-03-05docs($route, ng:view): Fix the examples to work on jsfiddle, update docsVojta Jina
2012-02-28feat(ng:include) Fire $contentLoaded eventVojta Jina
+ refactor unload to listen on this event -> we can use unload with ng:view as well Closes #743
2012-02-28refactor(ng:view) Make $route scope agnostic, add $contentLoaded eventVojta Jina
Problems: - controller was instantiated immediately on $afterRouteChange (even if no content), that's different compare to ng:controller, which instantiates controllers after compiling - route listened on current scope ($afterRouteChange), so if you were listening on $rootScope ($afterRouteChange), you get called first and current.scope === undefined, which is flaky - route handles scope destroying, but scope is created by ng:view - route fires after/before route change even if there is no route (when no otherwise specified) Solution: - route has no idea about scope, whole scope business moved to ng:view (creating/destroying) - scope is created (and controller instantiated) AFTER compiling the content - that means on $afterRouteChange - there is no scope yet (current.scope === undefined) - added $contentLoaded event fired by ng:view, after linking the content
2012-02-28refactor($route): remove .parent(); ng:view scope creationMisko Hevery
2012-02-28refactor($route): move when/otherwise to providerMisko Hevery
2012-02-21feat($compile) add locals, isolate scope, transclusionMisko Hevery
2012-01-25docs(compiler): update the compiler docsMisko Hevery
2012-01-23refactor($controller): Add $controller service for instantiating controllersVojta Jina
So that we can allow user to override this service and use BC hack: https://gist.github.com/1649788
2012-01-23refactor(scope): separate controller from scopeVojta Jina
Controller is standalone object, created using "new" operator, not messed up with scope anymore. Instead, related scope is injected as $scope. See design proposal: https://docs.google.com/document/pub?id=1SsgVj17ec6tnZEX3ugsvg0rVVR11wTso5Md-RdEmC0k Closes #321 Closes #425 Breaks controller methods are not exported to scope automatically Breaks Scope#$new() does not take controller as argument anymore
2011-12-06fix(route): $destroy scope after update and reloadVojta Jina
When we update route (changing only search param, no route reload) and then reload (change to different route), it did not $destroy last scope.
2011-11-14style(docs): make jslint happy - fix some warningsVojta Jina
2011-11-14doc(service): update docs for the moved servicesMisko Hevery
2011-11-14refactor(services): migrate angular.service -> moduleMisko Hevery
2011-11-14refactor(injector): turn scope into a serviceMisko Hevery
- turn scope into a $rootScope service. - injector is now a starting point for creating angular application. - added inject() method which wraps jasmine its/beforeEach/afterEach, and which allows configuration and injection of services. - refactor tests to use inject() where possible BREAK: - removed angular.scope() method
2011-10-12docs(*): remove @workInProgress from everywhereIgor Minar
it's not useful any more and it only makes the docs look ugly
2011-10-11chore(formating): clean code to be function() {Misko Hevery
2011-10-11feat(forms): new and improved formsMisko Hevery
2011-09-21fix($route): fix regex escaping in route matcherIgor Minar
2011-09-08style: fix some missing semi-colons and spaces, typosVojta Jina
2011-09-08refactor($route): remove some odd code and rename allowReload to forceReloadVojta Jina
2011-09-08fix($route): update $route to reflect $location changesVojta Jina
* update $route to reflect new $location * add some more unit tests to $route * fix some other failing unit tests * redirect overrides the url now Breaks $route custom redirect fn has only 3 params now
2011-08-31style(docs): improve the formatting of events in docsMisko Hevery
2011-08-31feat($route): add events before/after route changeMisko Hevery
BREAKING CHANGE * removing `onChange` FEATURE * adding three events: $beforeRouteChange, $afterRouteChange, $routeReload
2011-08-19feat($route): add reloadOnSearch route param to avoid reloadsIgor Minar
In order to avoid unnecesary route reloads when just hashSearch part of the url changes, it is now possible to disable this behavior by setting reloadOnSearch param of the route declaration to false. Closes #354
2011-08-16doc(sample): Add javascript sandbox integration (jsFiddle)dandoyon
Change doc_widget.js to: - render "edit in jsfiddle" button next to all examples - make opt out certain examples by adding jsfiddle="false" attribute to doc:source element
2011-08-15style(*): wrap all assignments in if statementsIgor Minar
we commonly assign stuff in if statments like this: if (variable = someFn()) { //do something with variable } This results in lint and IDE warnings (did you mean ==?). It is better to be explicit about our intention and wrap the assignement into parens: if ((variable = someFn())) { //do something with variable } Doing so suppresses warnings + is easier to understand the intention. I verified that the closure compiler strips the extra parens, so there is no byte overhead for this safety practice. We should use this style going forward...
2011-08-12refactor(scope): remove $flush/$observe ng:eval/ng:eval-orderMisko Hevery
2011-08-02feat(scope): new and improved scope implementationMisko Hevery
- Speed improvements (about 4x on flush phase) - Memory improvements (uses no function closures) - Break $eval into $apply, $dispatch, $flush - Introduced $watch and $observe Breaks angular.equals() use === instead of == Breaks angular.scope() does not take parent as first argument Breaks scope.$watch() takes scope as first argument Breaks scope.$set(), scope.$get are removed Breaks scope.$config is removed Breaks $route.onChange callback has not "this" bounded
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-13doc($route): fix $route example and couple of typosVojta Jina
Rewrite $route example a bit, as it required $location and $route services to be eager published in the root scope. Fix small typos in formatter and ng:options docs.
2011-03-26remove _null and _undefinedIgor Minar
they have no significant effect on minified and gziped size. in fact they make things worse. file | before | after removal ---------------------------------------- concat | 325415 | 325297 min | 62070 | 62161 min + gzip | 25187 | 25176 The bottom line is that we are getting 0.05% decrease in size after gzip without all of the hassle of using underscores everywhere.
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"