nuxt logo

문서 번역(비공식)

useLazyAsyncData

이 useAsyncData의 래퍼는 즉시 탐색을 트리거합니다.

설명

기본적으로, useAsyncData는 비동기 핸들러가 해결될 때까지 탐색을 차단합니다. useLazyAsyncDatalazy 옵션을 true로 설정하여 핸들러가 해결되기 전에 탐색을 트리거하는 useAsyncData의 래퍼를 제공합니다.

useLazyAsyncDatauseAsyncData와 동일한 시그니처를 가지고 있습니다.

이것도 참고 api > composables > use-async-data

예제

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로 명명해서는 안 됩니다.

이것도 참고 getting-started > data-fetching