Back to All

Is there a refetch/refresh option for getNftsForContract ?

I'm creating a dashboard where users can mint nfts, see their nfts, how much nft has been minted...
Everything works fine, but when I mint an nft (my stack is next.js/wagmi hooks for web3), the data provided by getNftsForContract (or by getNftsForOwner) doesn't refresh.

I've made a solution using react useState, with

  const [fetchContractData, setFetchContractData] = useState(true);

(...)

  useEffect(() => {
    if (fetchContractData) {
      alchemy.nft.getNftsForContract(GLIMMERS_GOERLI_ADDRESS).then((res) => {
           (...)
      });
    }
    setFetchContractData(false);
  }, [address, fetchContractData]);

(...)
// useContractEvent is a wagmi hook, who can launches callback on a specified event
  useContractEvent({
    ...configGlimmers,
    eventName: "Transfer",
    listener: (event) => {
      setFetchContractData(true);
      (...)
    },
  });

Is there a less cumbersome way to do this ? Maybe an option inside getNftsForContract I don't know...

ReadMe