Frameworks
Next.js - App Router
Vapor UI 컴포넌트를 Nextjs app router와 사용하는 방법Next.js - App Router
Next.js 13의 app/ 디렉토리는 기본적으로 서버 컴포넌트를 사용합니다. Vapor UI 컴포넌트는 빌드 시점에 use client
를 추가하므로 서버 컴포넌트에서 사용할 수 있습니다.
라이브러리 설치
프로젝트 디렉토리로 이동하여 VaporUI를 설치합니다.
cd your-project-name
npm install @vapor-ui/core @vapor-ui/icons
next.config.ts
설정
프로젝트의 루트 디렉토리에 있는 next.config.ts
파일을 열고, optimizePackageImports
옵션을 추가합니다. 이 설정은 @vapor-ui/core
라이브러리에서 사용하는 부분만 빌드에 포함시켜 최종 번들 사이즈를 줄여줍니다.
import type { NextConfig } from 'next';
const nextConfig: NextConfig = {
// Vapor UI 번들 최적화 설정
experimental: {
optimizePackageImports: ['@vapor-ui/core', '@vapor-ui/icons'],
},
};
export default nextConfig;
컴포넌트 사용 예시
이제 페이지에서 Vapor UI 컴포넌트와 테마 전환 기능을 사용할 수 있습니다.
import { Card, Text } from '@vapor-ui/core';
export default function HomePage() {
return (
<main className="flex min-h-screen flex-col items-center justify-center p-24">
<Card.Root className="max-w-md">
<Card.Body>
<div className="flex flex-col gap-4">
<Text asChild typography="heading1" foreground="normal-200">
<h1>Welcome to Vapor UI!</h1>
</Text>
<Text>
이것은 Next.js App Router와 함께 Vapor UI 컴포넌트를 사용하는
예시입니다.
</Text>
</div>
</Card.Body>
</Card.Root>
</main>
);
}