With the recent refactoring of $location service we changed this behavior resulting in a regression. Previously we thought that html5 mode always required base[href] to be set in order for urls to resolve properly. It turns out that base[href] is problematic because it makes anchor urls (#foo) to always resolve to the base url, which is almost always incorrect and results in all anchors links and other anchor urls (e.g. svg references) to be broken. For this reason, we should now start recommending that people just deploy to root context (/) and not set the base[href] when using the html5 mode (push/pop history state). If it's impossible to deploy to the root context then either all urls in the app must be absolute or base[href] must be set with the caveat that anchor urls in such app won't work. Closes #2762 |
||
|---|---|---|
| css | ||
| docs | ||
| example | ||
| i18n | ||
| images | ||
| lib | ||
| logs | ||
| src | ||
| test | ||
| .gitignore | ||
| .travis.yml | ||
| angularFiles.js | ||
| bower.json | ||
| changelog.js | ||
| CHANGELOG.md | ||
| changelog.spec.js | ||
| changelog.tmp.md | ||
| check-size.sh | ||
| CONTRIBUTING.md | ||
| gdocs.js | ||
| gen_docs.sh | ||
| Gruntfile.js | ||
| init-repo.sh | ||
| karma-docs.conf.js | ||
| karma-e2e.conf.js | ||
| karma-jqlite.conf.js | ||
| karma-jquery.conf.js | ||
| karma-modules.conf.js | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| release-commit.sh | ||
| start-iteration.sh | ||
| validate-commit-msg.js | ||
| validate-commit-msg.spec.js | ||
| watchr-docs.rb | ||
AngularJS
AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding. To help you structure your application better and make it easy to test, AngularJS teaches the browser how to do dependency injection and inversion of control. Oh yeah and it also helps with server-side communication, taming async callbacks with promises and deferreds; and make client-side navigation and deeplinking with hashbang urls or HTML5 pushState a piece of cake. The best of all: it makes development fun!
- Web site: http://angularjs.org
- Tutorial: http://docs.angularjs.org/tutorial
- API Docs: http://docs.angularjs.org/api
- Developer Guide: http://docs.angularjs.org/guide
- Contribution guidelines: http://docs.angularjs.org/misc/contribute
Building AngularJS
Once you have your environment setup just run:
grunt package
Running Tests
To execute all unit tests, use:
grunt test:unit
To execute end-to-end (e2e) tests, use:
grunt package
grunt test:e2e
To learn more about the grunt tasks, run grunt --help and also read our
contribution guidelines.