getStaticPaths-> getStaticProps
export const getStaticPaths: GetStaticPaths = async () => {
const stores = (await import('../public/stores.json')).default;
const paths = stores.map((store) => ({ params: { name: store.name } }));
return { paths, fallback: false };
};
export const getStaticProps: GetStaticProps = async ({ params }) => {
const stores = (await import('../public/stores.json')).default;
const store = stores.find((store) => store.name === params?.name);
return { props: { store } };
};getStaticPaths에서 리턴하는 paths가
getStaticProps 매개변수 params인가요??
답변 1
0
안녕하세요. 질문 감사드립니다.
paths와 params는 서로 긴밀한 관련이 있지만 서로 같지는 않습니다.
1. getStaticPaths의 paths 값을 이용하여 [name].tsx 에 대해 어떤 페이지들을 pre-render 할 지 결정합니다.
즉, path의 값은 [{ params: { name: '마굿간편한식당' } }, { params: { name: '롸버트치킨 강남1호기' } }, ...] 와 같은 형태입니다. (빌드 타임에 '/마굿간편한식당', '/펠른' 과 같은 페이지를 만들 것임을 선언)
참고할 공식 문서: https://nextjs.org/docs/api-reference/data-fetching/get-static-paths#paths
2. getStaticProps는 params 값을 이용하여 현재 페이지( /[name] )의 'name' parameter를 가져옵니다. 예를 들어 '/펠른' 페이지에서 params 값은 { name: '펠른' } 입니다.
즉 paths를 이용해 어떤 경로의 페이지를 pre-render 할 지 결정하고, params를 이용해 각각의 페이지에 맞는 param을 가져올 수 있습니다.
예제 코드의 주석을 살펴보면 더 잘 이해되실 것 같습니다ㅎㅎ(https://nextjs.org/docs/api-reference/data-fetching/get-static-paths#fallback-false)
감사합니다 :)
API 라우터를 사용해야 하는 경우에 대해
1
150
1
키보드 어떤 거 사용하시나요
1
352
1
next.js 멀티플 런타임 관련해서 질문 올립니다..
1
358
2
아주 기초적인 질문입니다.
1
322
1
서버사이드 렌더링을 할 때, 서버는 어디에 있는 건가요?
1
1170
2
수업을 듣다가 SSR에 관하여..
1
551
2
interface 와 type
1
376
1
엘리맨트들의 자식관계가 어떻게 이렇게 되나 궁금합니다.
1
384
1
onLoad함수 (script태그의 onLoad X)
1
426
1
dynamic에 대한 질문
1
447
1
SSR vs SSG
1
476
2
NoSSR 관련한 질문입니다:)
1
376
1
a tag 질문 !
1
327
2
8분 20초 배포 관련
1
324
2
안녕하세요! 구글 서치 콘솔에 등록하는 도중 다음 오류가 뜹니다
0
2679
2
emotion styles 파일이 빌드시 경고로 뜹니다.
1
438
1
naver map 이 출력되지 않습니다.
1
481
1
페이지에 site맵 존재시 next Link는 csr 처럼 싹가져오게 되나요?
1
264
2
Failed to load resource: the server responded with a status of 404 ()
1
1034
2
VSCode 익스텐션 궁금합니다.
1
357
1
상태관리 질문 있습니다!
1
450
1
swr에 대한 질문입니다. (용어 관련)
1
374
1
swr 질문입니다!
1
338
1
안녕하세요. span 태그의 부모에 display: flex 를 적용하는데 왜 적용되는지 아무리 생각해도 이해가 되지 않아 질문드립니다.
1
681
2





