title: How to make data automatically udated?
body: <p>I'm building an app that is made of many components. Many of these components display list (ListComponent) that needs to be updated based on filter parameters. The user can set filter parameters by clicking links (in some components) or by fullfilling a filter 'form' (FilterComponent inside HomeComponent). The results of this filtering choices must be seen on all pages.</p>
  
  <p>Filter parameters are available to all the components via BehaviorSubject(as observable) and each component can get and set its values. </p>
  
  <p>When submitting a filter 'form' on HomeComponent (HomeComponent is made of ListComponent and FilterComponent), the ListComponent doesn't get automatically updated. When I change the page, all works fine, the filters are applied accordingly (as well as when I return to it).</p>
  
  <p>Inside ListComponent (inside ngOnInit) this is hapening:</p>
  
  <pre><code>  selected: Selected; //imported interface
    public items = [];
  
    ngOnInit() {
      this.itemsService.getFilterParams().subscribe(data =&gt; {
        this.selected = data;
    });
  
      this.itemsService.getFilteredItems
        (this.selected.category, this.selected.price, this.selected.title)
       .subscribe(data =&gt; this.items = data); // HTML looks like this {{*ngFor item in items.. and so on..}}
    }
  </code></pre>
  
  <p>BTW: I have all my shared methods in itemsService, which I know is wrong, but is only temporary. 
  I'm new to Angular and have no idea what I'm doing (wrong). I'd appriciate any help!</p>