useLazyAsyncData
이 useAsyncData의 래퍼는 즉시 탐색을 트리거합니다.
설명
기본적으로, useAsyncData
는 비동기 핸들러가 해결될 때까지 탐색을 차단합니다. useLazyAsyncData
는 lazy
옵션을 true
로 설정하여 핸들러가 해결되기 전에 탐색을 트리거하는 useAsyncData
의 래퍼를 제공합니다.
useLazyAsyncData
는 useAsyncData
와 동일한 시그니처를 가지고 있습니다.
예제
pages/index.vue
<script setup lang="ts">
/* 데이터 가져오기가 완료되기 전에 탐색이 발생합니다.
'pending' 및 'error' 상태를 컴포넌트의 템플릿 내에서 직접 처리하세요.
*/
const { status, data: count } = await useLazyAsyncData('count', () => $fetch('/api/count'))
watch(count, (newCount) => {
// count는 처음에 null일 수 있으므로, 즉시 그 내용을
// 사용할 수는 없지만, 이를 관찰할 수 있습니다.
})
</script>
<template>
<div>
{{ status === 'pending' ? 'Loading' : count }}
</div>
</template>
useLazyAsyncData
는 컴파일러에 의해 변환되는 예약된 함수 이름이므로, 자신의 함수를 useLazyAsyncData
로 명명해서는 안 됩니다.
※이 페이지는 Nuxt.js 공식 문서의 비공식 번역 페이지입니다.
공식 문서의 해당 페이지는 여기 있습니다:
https://nuxt.com/docs/3.x/api/composables/use-lazy-async-data