AngularJS (Performance Optimized) TodoMVC Example

HTML is great for declaring static documents, but it falters when we try to use it for declaring dynamic views in web-applications. AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop.

AngularJS - angularjs.org

Learning AngularJS

The AngularJS website is a great resource for getting started.

Here are some links you may find helpful:

Articles and guides from the community:

Get help from other AngularJS users:

If you have other helpful links to share, or find any of the links above no longer work, please let us know.

Implementation

The normal AngularJS TodoMVC implementation performs deep watching of the todos array object. This means that it keeps an in-memory copy of the complete array that is used for dirty checking in order to detect model mutations. For smaller applications such as TodoMVC, this is completely fine as one trades off a little memory and performance for the sake of simplicity.

In larger more complex applications however, where one might be working with 100s or 1000s of large objects one definitely should avoid using this approach. This implementation of the AngularJS app demonstrates the correct way to approach this problem when working in larger apps.