title: Does KeyValueDiffers of DoCheck only works for one object per component?
body: <p>First I had just this in my ngDoCheck method and works perfectly:</p>
  
  <pre><code>var productChanges = this.differ.diff(this.myProduct);
  </code></pre>
  
  <p>then decided to check changes on a second model of my component and added this below line:</p>
  
  <pre><code>var companyChanges = this.differ.diff(this.myCompany);
  </code></pre>
  
  <p>and both changes are chekeced in separate if statements but only last one gets called (companyChanges)</p>
  
  <p>Is this expected behavior? Does ngDoCheck only works for one object per component?</p>
  
  <p>For the sake of clarity here is my full ngDoCheck method:</p>
  
  <pre><code>ngDoCheck() {
      var productChanges = this.differ.diff(this.myProduct);
  
      //DOESN'T IT CHECK 2 MODELS LIKE SO BELOW ?
      //var companyChanges = this.differ.diff(this.myCompany);
  
      if (productChanges) {
          // console.log('Product changes detected');
  
          productChanges.forEachChangedItem((r: KeyValueChangeRecord) =&gt; {
  
              if (r.currentValue &amp;&amp; r.currentValue != r.previousValue) {
                  this.filterProduct(r.currentValue, r.key);
  
              }
          });
      }
  </code></pre>
  
  <p><strong>EDIT:</strong> by reading other questions and answers I feel I need to share this:</p>
  
  <p>In component constructor differ is defined like so:</p>
  
  <pre><code>this.differ = differs.find({}).create(null);
  </code></pre>
  
  <p>Probably this is what needs to be changed first.</p>