🍟
Next.jsのDynamic Routesの変更を検知する
超短備忘録です。
pages/hoge/[...path].tsx みたいなものを作ると hoge から始まるRouteはすべてここにマッチするわけで、例えば /hoge/aaa から /hoge/bbb に遷移するとき、何も考えずに useEffect しても発火しません。
かといって、以下のようにすると無限ループになります。
const router = useRouter()
const [...path] = router.query.path as string[] | undefined ?? []
useEffect(() => {
console.log('hello~~')
}, [path])
正解はこっち。
const router = useRouter()
useEffect(() => {
console.log('hello~~')
}, [router])
思うより router は賢かった。
Discussion