title: mobx reaction on filtered list
body: <p>I want to listen to the change on specific items of list. I used <code>reaction</code> on my list and I filtered my list to get the specific items which I need to listen, but <code>reaction</code> fires when new new item adds to list (out of my filtered list)</p>
  <p>This is my code:</p>
  <pre><code>const MyCustomModel = types
    .model({
      id: types.identifier,
      start: types.Date,
      end: types.Date,
    });
  
  const MyStore = types
    .model({
      id: types.identifier,
      items: types.map(MyCustomModel),
    })
    .views(self =&gt; ({
      get itemsArray() {
        return Array.from(self.items.values());
      },
    }))
    .actions(self =&gt; {
      return {
        setListener(start: Date, end: Date) {
          myReactionDisposer = reaction(
            () =&gt;
              self.itemsArray
                .filter(
                  item =&gt;
                    item.end.getTime() &gt;= self.start.getTime() &amp;&amp;
                    item.start.getTime() &lt;= self.end.getTime(),
                )
                .map(item=&gt; item),
            () =&gt; {
              console.log('my reaction fires!');
              // other codes
            },
          );
        },
    });
  </code></pre>
  <p>For example if I listen to the range <code>2020-09-20 00:00:00</code> to <code>2020-09-21 00:00:00</code>
  and I add new item with a start and end value in another day <code>{start: '2020-09-15 10:00:00' , end: '2020-09-15 16:20:00'}</code> , the reaction fires!</p>