1. “use client” 지시어의 남발문제
    1. 모바일 시안에 헤더부분이 사라지는 부분이 많아 usePathname사용 그러나 훅은 → use client에서 사용가능
    2. 전역이 use client로 도배될수있는 문제
    3. 부모가 클라이언트가 될필요가 없다. 자식만 클라이언트 컴포넌트면되니 wrapper를 넣는다면?(컴포짓패턴)
import HeaderWrapper from "@/components/layout/HeaderWrapper";
import publicMetadata from "#/config/metaData"

export default function PublicLayout({ children }) {
  return (
			<>
        {/* 서버 컴포넌트인 레이아웃 안에 클라이언트 컴포넌트를 끼워 넣음 */}
        <HeaderController />
        {children}
			</>
  );
}

export const metadata = {...publicMeta/Data}
// 대신 이함수는 libs/utils안에 넣습니다.
"use client"

import { usePathname } from "next/navigation"
import Header from "./Header"

export default function HeaderWrapper() {
	const pathname = usePathname()
	
	/** const hideHeaderPaths = ["/sell-detail" ...]
	 if (hideHeaderPaths.includes(pathname) {
			return null
	}
	
	return <Header />;
	*/ 위 방법이 맞을뜻합니다. (많을때는 배열을 사용하는게 효과적일뜻합니다.
	
	// 아래는 현재 Layout에 바로 적용한 방법이다.
	const isCompletePage = pathname.endsWith('/compelte')
		
	return (
		<>
				{!isCompletePage && <Header />}
				{children}
		</>
	)	
}
  1. tailwind 의 중복된 유틸리티
    1. tailwind플러그인이나 노란색줄로 바꿔달라고 하는것은 확인필요
    2. 간혹 유틸리티가 중복되는 경우발견

😀긍정

😗중립

⛈️부정

생각 해볼만한점