title: Update the apollo cache without calling the graphql server (apollo v3.3)
body: <p>I'm building a react app, I have a datasheet and update directly on the data stream
  I want when I send data to graphql server for update and get <code>true</code> result then I will update apollo cache with <code>cache.writeQuery</code></p>
  <ul>
  <li>The problem is that when the following code is executed, there is also a request to the graphql server to get the data from the whole table and update the cache, I don't want to request to the graphql server to work. There, I want to update from the browser. So where did I go wrong?</li>
  </ul>
  <p>here is my code</p>
  <pre class="lang-js prettyprint-override"><code>updateInventoryCache: async (_, { inventory, productId, variables }, { cache }) =&gt; {
        let variablesData;
        if (variables) {
          variablesData = JSON.parse(variables);
        }
        const { getListProduct } = cache.readQuery({
          query: GET_PAGING_PRODUCT,
          variables: variablesData.variables
        });
        cache.writeQuery({
          query: GET_PAGING_PRODUCT,
          variables: variablesData.variables,
          data: {
            getListProduct: {
              ...getListProduct,
              products: getListProduct.products.map((product) =&gt; {
                if (product.id === productId) {
                  return {
                    ...product,
                    inventory
                  };
                }
                return product;
              })
            }
          }
        });
        return true;
      }
  </code></pre>
  <p>&quot;@apollo/client&quot;: &quot;^3.3.7&quot;</p>
  <p>update 1:</p>
  <p>I will initially call the graphql server to get the data and store it in apollo's (cache-and-network) cache. Then I want to update that data in the cache without having to call the apollo server to <code>refetchQueries</code> As in the post, I used the <code>client.writeQuery</code> function to update the cache but instead of updating at the client, apollo called the graphql server to get new data and update the cache while I was not using <code>refetchQueries</code>.</p>
  <p>update 2:
  I checked, my cache has been updated but my UI doesn't re-render</p>