metadata를 동적으로 적용하기
generateMetadata
동적 라우팅 경로인 경우, 메타데이터 객체를 반환하는 generateMetadata 함수를 사용할 수 있다.
interface IParams {
params: { id: string };
}
export async function generateMetadata({ params: { id } }: IParams) {
const movie = await getMovie(id);
return {
title: movie.title,
};
}title을 동적으로 변경하는 방법
페이지를 이동할 때마다 {title} | Movie 와 같은 형식으로 title을 보여주고 싶을 때, 모든 컴포넌트마다 Metadata를 만들지 않고, %s를 사용해서 동적으로 title을 변경시킬 수 있다.
interface IParams {
params: { id: string };
}
export async function generateMetadata({ params: { id } }: IParams) {
const movie = await getMovie(id);
return {
title: {
absolute: '',
default: 'Next.js Tutorial - Movie',
template: '%s| Movie',
}
};
}app/page.tsx에 접근했을 때 title 👉🏻 Next.js Tutorial - Movie
app/blog/page.tsx에 접근했을 때 title 👉🏻 Blog | Movie
Static Site Generation (SSG)에서 generateMetadata 사용
Last updated