title: Angular 2 ngOnChanges not firing on rapidly changing input
body: <p>I am using an Angular 2 @Input property to pass desired numeric values to the child component like this.</p>
  
  <p>Parent component:</p>
  
  <pre><code>@Component({
   selector: 'test-parent',
   template: '&lt;button (click)="raiseCounter()"&gt;Click me!&lt;/button&gt;&lt;test-child [value]="counter"&gt;&lt;/test-child&gt;'
  })
  
  export class ParentComponent {
   public counter: number = 0;
  
   raiseCouner() {
    this.counter += 1;
    this.counter += 1;
    this.counter += 1;
   }
  }
  </code></pre>
  
  <p>Child component:</p>
  
  <pre><code>@Component({
    selector: 'test-child'
  });
  
  export class ChildComponent implments OnChanges {
   @Input() value: number = 0;
  
   ngOnChanges() {
    if (this.value) {
     this.doSomeWork();
    }
   }
  
   doSomeWork() {
    console.log(this.value);
   }
  }
  </code></pre>
  
  <p>In this scenario, the OnChanges lifecycle hook is triggered only once instead of 3 times, showing that the input value changed from 0 to 3. However I need it to be triggered every time the value changes (0 -> 1, 1 -> 2, 2 -> 3, etc..). Is there a way how to do this?</p>
  
  <p>Thanks.</p>