Angular-Isotope looks for the last item in the array before the Isotope mode is refreshed as in the code below. Adding a new item to the original array does not refresh Isotope because it is not considered the last item in the orderBy scenario.
This is equivalent to calling 'isotope()'
Ng-repeat's "track by" allows a key to be specified, for example "name" or "id", by which a model is reassociated with a pre-existing DOM element/Isotope model. The more proactive DOM element management required of Angular, to track and reuse elements, has the advantage of letting the Isotope DOM be consistent with the Angular model, without any added $watch, refresh, or similar mechanisms.