inflearn logo
강의

Course

Instructor

Next.js Complete Mastery (v15): Building a Notion-Based Developer Blog (with Cursor AI)

Metadata API

params 에 Promise 객체 타입이 지정되어야 하는 이유? 최신?

76

mrjbk777904

13 asked

0

안녕하세요! 강의 5:15초 부터의 설명에 조금만 더 자세히 설명해주시면 감사할것 같아서요!

"이러한 파람즈도 프라미스로 가져와야겠죠 우리가 최신을 사용하고 있기 때문에 다시 generateMetadata 함수를"라고 스크립트(영상자막)는 나와 있는데, 이유를 설명하는 파트가 잘 안 와닿아서 혹시 설명해주실 수 있나요?

직관적으로 생각하면 export generateStaticParams에서 slug 를 params으로 가져오는데 시간이 걸리니까, 기다려야 하니까 await 으로 params를 기다리는건 알겠는데, 'params'가 왜, 어떻게 해서 Promise 타입인지 궁금합니다.

 

너무 두서없었네요. 정리하자면

1.왜 params 가 Promise 객체 타입인지, 코드 어디에서, 어떻게 해서 Promise 객체 타입이 되었는지 궁금합니다.

2. 혹시 params 가 Promise 객체 타입인 이유는, 그저, [slug]폴더로 동적페이지로 정의되었으니, 컴포넌트로 들어오는 입력값 {params}는 [] 안에 들어간 변수값이 들어오는 건가요? 그래서 그냥 nextjs 스펙상 무조건promise 로 params 가 주어지게 되는건가요?

  1. 너무너무 헷갈려서 그런데, 동적라우팅/정적 라우팅 별, 그리고 Clientside /serverside 별로 4가지로 나누어서 params 가져오는 방법을 설명해주실수 있나요? 너무너무 헷갈리네요.... 동적/정적라우팅에 따라 나뉘나요, client/server 에 따라 나뉘나요? 후자인걸로 생각하고 있긴 한데 맞는지 너무 헷갈리네요..

감사합니다! 좋은 하루 되세요!

react 블로그 next.js cursor cursorai

Answer 1

0

gymcoding

안녕하세요 🙂

Next.js 15부터 params가 Promise로 변경되었습니다. 스펙이 그러합니다.


Server Component Params 가져오기

// app/posts/[slug]/page.tsx
export default async function PostPage({ params }) {
  const { slug } = await params // Next.js 15+
  // ...
}

Client Component Params 가져오기

'use client'
import { useParams } from 'next/navigation'

export default function ClientComponent() {
  const params = useParams()
  const slug = params.slug // 동기적 접근
}

rehype-sanitize 설치의 필요성

0

92

2

Notion API-DB 연결이 안돼요

0

542

2

private folders 와 전역 폴더

0

70

2

퀴즈 질문 풀이 오류

0

86

2

Streaming 관련해서 문의드립니다.

0

74

2

ISR 매커니즘에 대한 궁금증

0

68

2

cursor AI 프로젝트 룰 관련 질문 드립니다.

0

344

2

streaming 페이지 보완 필요

1

56

2

remark-gfm

0

111

2

마크업 파트 가독성 향상 방법

0

63

2

Next.js 블로그 결과물 공유 이벤트 진행 여부

0

69

1

블로그 PostCard 이미지 상단 여백

0

70

3

flex-col 과 space-y-6 차이

0

118

1

컴파일 에러 및 의존성 충돌 문제

0

106

2

TypeError: Invalid URL

0

172

2

세션 6의 퀴즈 5번 정답 옵셔널 캐치올 아닌가요?

1

73

2

상세 페이지 404 에러 발생

0

113

2

스타일이 적용 안되는 문제

0

96

2

cursorAI에 rule 생성 시 rule type이 안 나오는 현상 발생

0

177

3

클라이언트 컴포넌트 사전 렌더링

0

52

2

상세페이지 구현 Author의 name 프러퍼티가 조회가 안됩니다.

1

71

2

A

0

94

2

unstable_cache 사용 시 적정 revalidate 값 문의

0

91

2

useActionState에서 반환값 필드 생략 시 조건에 따라 에러 발생 여부가 다른 이유

0

85

2