패스잇
프론트엔드 개발 · 중급

Nuxt.js 3에서 서버 사이드 렌더링(SSR) 환경에서 데이터를 비동기적으로 가져오는 주요 방법들(예: useAsyncData, useFetch)을 설명하고, 각각의 특징과 사용 시나리오를 비교해주세요.

힌트 · useAsyncData는 일반적인 비동기 데이터 가져오기에, useFetch는 API 요청에 특화되어 있으며 캐싱, 에러 처리 등의 편의 기능을 제공합니다.

useAsyncDatauseFetchSSR캐싱에러 핸들링

모범답안

Nuxt 3에서 SSR 환경에서 데이터를 비동기적으로 가져오는 주요 방법은 useAsyncData와 useFetch입니다.

useAsyncData는 가장 기본적인 데이터 fetching 방식입니다. Promise를 반환하는 함수를 인자로 받아 데이터를 가져오고, 로딩 상태와 에러를 관리할 수 있게 해줍니다. 일반적인 비동기 작업에 유용합니다.

useFetch는 useAsyncData를 기반으로 만들어졌지만, API 엔드포인트에서 데이터를 가져오는 데 특화되어 있습니다. 자동으로 HTTP 요청을 보내고, 응답을 처리하며, 캐싱, 에러 핸들링 등 API 요청에 필요한 다양한 기능을 내장하고 있습니다. API 서버와 통신할 때는 useFetch를 사용하는 것이 더 편리합니다.

예를 들어, 블로그 포스트 목록을 가져올 때는 useFetch('/api/posts')를 사용하고, 특정 계산 결과를 비동기적으로 가져올 때는 useAsyncData(() => computeResult())를 사용할 수 있습니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 Vue.js / Nuxt 면접 질문

← Vue.js / Nuxt 면접 질문 전체 보기