I have an issue while creating simple HOC which should redirect to 404 when there are no query params. Otherwise, it should just return a component.
import React, { useState, useEffect } from 'react';
import { Redirect } from 'react-router-dom';
import { api } from '../utils/api';
export default (WrappedComponent, queryParamKey) => {
   return () => {
   const [ paramAvailability, setParamAvailability ] = useState(false);
  useEffect(() => {
    const urlParams = new URLSearchParams(document.location.search);
    const token = urlParams.get(queryParamKey);
    setParamAvailability(!!token);
  });
  return paramAvailability ? (
    <WrappedComponent {...this.props} />
  ) : <Redirect to="/404" />;
  };
};
So every time I'm wrapping a component it redirect to 404 either there are or there are not query params available.
 
    