ReactJS introduced two new features, called hooks, in its newer versions: useState and useEffect. These hooks allow functional components to have their own state and lifecycle methods, which used to be possible only with class components.
Before Hook...