title: Apollo seems to refresh, when state is mapped to props, how can i prevent it?
body: <p>I've build a component which basically list entries in a table, on top of that, i have another component to which filters can be applied. It all works really great with Apollo.</p>
  
  <p>I'm trying to add deep linking into the filters, which on paper seems incredible simple, and i almost had i working.</p>
  
  <p>Let me share some code.</p>
  
  <pre><code>const mapStateToProps = ({ activeObject }) =&gt; ({ activeObject });
  
  @withRouter
  @connect(mapStateToProps, null)
  @graphql(FILTER_REPORT_TASKS_QUERY, {
    name: 'filteredTasks',
    options: (ownProps) =&gt; {
      const filters = queryString.parse(location.search, { arrayFormat: 'string' });
  
      return {
        variables: {
          ...filters,
          id: ownProps.match.params.reportId,
        },
      };
    },
  })
  export default class TasksPage extends Component {
    static propTypes = {
      filteredTasks: PropTypes.object.isRequired,
      activeObject: PropTypes.object.isRequired,
      match: PropTypes.object.isRequired,
    };
  
    constructor(props) {
      super(props);
  
      const filters = queryString.parse(location.search, { arrayFormat: 'string' });
      this.state = { didSearch: false, initialFilters: filters };
      this.applyFilter = this.applyFilter.bind(this);
  
    }
  
    applyFilter(values) {
      const variables = { id: this.props.match.params.reportId };
      variables.searchQuery = values.searchQuery === '' ? null : values.searchQuery;
      variables.categoryId = values.categoryId === '0' ? null : values.categoryId;
      variables.cardId = values.cardId === '0' ? null : values.cardId;
  
      /*
      this.props.history.push({
        pathname: `${ this.props.history.location.pathname }`,
        search: '',
      }); 
      return null;
      */
  
      this.props.filteredTasks.refetch(variables);
      this.setState({ didSearch: true });
    }
  
    ..... Render functions.
  </code></pre>
  
  <p>Basically it calls the apply filter method, when a filter is chosen.</p>
  
  <p>Which all works great, my problem is that when the <code>activeObject</code> is updated (By selecting a entry in the list). It seems to run my HOC graphql, which will apply the filters from the URL again, ignoring the filters chosen by the user.</p>
  
  <p>I tried to remove the query strings from the url, once filters are applied, but i get some unexpected behavior, basically it's like it doesn't fetch again.</p>
  
  <p>How can i prevent Apollo from fetching, just because the redux pushes new state?</p>