<NuxtErrorBoundary> uses Vue's onErrorCaptured hook under the hood.@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>