<NuxtErrorBoundary>
<NuxtErrorBoundary> コンポーネントは、デフォルトスロットで発生するクライアントサイドのエラーを処理します。
<NuxtErrorBoundary>
は内部で Vue の onErrorCaptured
フックを使用しています。
イベント
-
@error
: コンポーネントのデフォルトスロットがエラーをスローしたときに発生するイベント。<template> <NuxtErrorBoundary @error="logSomeError"> <!-- ... --> </NuxtErrorBoundary> </template>
スロット
-
#error
: エラーが発生した場合に表示するフォールバックコンテンツを指定します。<template> <NuxtErrorBoundary> <!-- ... --> <template #error="{ error, clearError }"> <p>エラーが発生しました: {{ error }}</p> <button @click="clearError">エラーをクリア</button> </template> </NuxtErrorBoundary> </template>
例
スクリプト内での error
と clearError
へのアクセス
コンポーネントのスクリプト内で error
と clearError
プロパティに以下のようにアクセスできます:
<template>
<NuxtErrorBoundary ref="errorBoundary">
<!-- ... -->
</NuxtErrorBoundary>
</template>
<script setup lang="ts">
const errorBoundary = useTemplateRef('errorBoundary')
// errorBoundary.value?.error
// errorBoundary.value?.clearError()
</script>
※このページは Nuxt.js 公式ドキュメントの翻訳ページ(非公式)です。
公式ドキュメントの該当ページはこちら:
https://nuxt.com/docs/3.x/api/components/nuxt-error-boundary