21 lines
516 B
TypeScript
21 lines
516 B
TypeScript
// components/RouterListener.tsx
|
|
"use client";
|
|
|
|
import { useEffect } from "react";
|
|
import { usePathname, useSearchParams } from "next/navigation";
|
|
|
|
export default function RouteChange() {
|
|
const pathname = usePathname();
|
|
const searchParams = useSearchParams();
|
|
|
|
useEffect(() => {
|
|
const url = searchParams.toString()
|
|
? `${pathname}?${searchParams.toString()}`
|
|
: pathname;
|
|
|
|
window.parent.postMessage({ type: "ROUTE_CHANGE", path: url }, "*");
|
|
}, [pathname, searchParams]);
|
|
|
|
return null;
|
|
}
|