nextjs
Client component feature used in server component
You're importing a component that needs .+\. It only works in a Client Component
Fixes
- 1.Add `'use client'` directive at the top of the file that uses hooks, event handlers, or browser APIs
- 2.Extract the interactive parts into a separate client component and import it
- 3.Keep data fetching in the server component, pass data as props to client component
app-routerserver-componentsuse-client
Related Errors
nextjs3 fixes
Next.js hydration mismatch
Hydration failed because the initial UI does not match|Text content does not match server-rendered HTML
- •Avoid using Date.now(), Math.random(), or browser APIs (window, localStorage) during initial render
- •Use `useEffect` + state to render browser-dependent content only on client
nextjs3 fixes
window/document not defined in SSR
ReferenceError: window is not defined|ReferenceError: document is not defined
- •Wrap browser-only code in `if (typeof window !== 'undefined')` check
- •Use dynamic import with `{ ssr: false }`: `dynamic(() => import('./Component'), { ssr: false })`
nextjs3 fixes
React hook used in server component
Error: Cannot use (useState|useEffect|useRef|useContext) in a Server Component
- •Add `'use client'` at the top of the file
- •Split into a server component (data fetching) and client component (interactivity)