이 함수를 사용하면 추가 메타데이터가 포함된 오류 개체를 만들 수 있다. 앱의 Vue 및 Nitro 부분 모두에서 사용할 수 있으며 throw 되게 되어있다.
매개변수
- err : { cause, data, message, name, stack, statusCode, statusMessage, fatal }
Vue 앱에서
createError 로 생성된 오류가 발생하는 경우:
- 서버 측에서는 clearError으로 지울 수 있는 전체 화면 오류 페이지가 실행된다.
- 클라이언트 측에서는 사용자가 처리할 수 있는 치명적이지 않은 오류가 발생한다. 전체 화면 오류 페이지를 실행해야 하는 경우 fatal: true 를 설정하여 수행할 수 있다.
사용 예
<!--
pages/movies/[slug].vue
-->
<script setup lang="ts">
const route = useRoute()
const { data } = await useFetch(`/api/movies/${route.params.slug}`)
if (!data.value) {
throw createError({ statusCode: 404, statusMessage: 'Page Not Found' })
}
</script>
API 경로에서
createError 를 사용하여 서버 API 경로에서 오류 처리를 트리거한다.
export default eventHandler(() => {
throw createError({
statusCode: 404,
statusMessage: 'Page Not Found'
})
})
참고) Nuxt-개요 > 오류 처리
'Nuxt 공식문서 번역 > Utils' 카테고리의 다른 글
defineNuxtRouteMiddleware (1) | 2023.12.15 |
---|---|
defineNuxtComponent (1) | 2023.12.15 |
clearNuxtState (0) | 2023.12.15 |
clearNuxtData (1) | 2023.12.15 |
clearError (0) | 2023.12.15 |