Persistent shared UI vs a fresh instance per navigation.
Skip to solutionKEEP THE
mediumFrontend
What is the difference between layout.js and template.js in Next.js?
171 views
01
Understand the problem
nextjslayouttemplaterouting
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Nudge consolestandby
Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.
03
Study the solution
A layout persists across navigations and keeps state/DOM. A template re-mounts a new instance on every navigation, resetting state and re-running effects — useful for enter/exit animations or per-navigation logic.
Solution ready — 2 min read
Classified // press E to declassify
04
Read the code
A template that resets per navigation
// app/template.tsx — re-created on every navigation
'use client';
import { useEffect } from 'react';
export default function Template({ children }) {
useEffect(() => { trackPageView(); }, []); // fires on EVERY navigation
return <div className="fade-in">{children}</div>;
}05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.
Transmission complete // awaiting log
KEEP THE
STREAK ALIVE.
Dossier 65 of 95 decoded in the Next.js track. One more won't hurt.