Called whenever one-way bindings are updated. The onChangesObj is a hash whose keys are the names of the bound properties that have changed, and the values are a ChangesObject object of the form { currentValue, previousValue, isFirstChange() }. Use this hook to trigger updates within a component such as cloning the bound value to prevent accidental mutation of the outer value.
Interface for the $onChanges lifecycle hook https://docs.angularjs.org/api/ng/service/$compile#life-cycle-hooks