"use client"; import { useEffect, useState } from "react"; export function useOnChange( callback: React.EffectCallback, dependancies: React.DependencyList ) { const [hasMounted, setHasMounted] = useState(false); // Page loads and sets hasMounted to true then next time dependacies change it will run the callback useEffect(() => { if (hasMounted) { return callback(); } else { setHasMounted(true); } }, dependancies); }