<NuxtErrorBoundary>

源码
<NuxtErrorBoundary> 组件处理默认插槽中发生的客户端错误。
The <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>
Docs > 4 X > Getting Started > Error Handling 中查看详情

示例

在脚本中访问 errorclearError

你可以在组件的脚本中像下面这样访问 errorclearError 属性:

<template>
  <NuxtErrorBoundary ref="errorBoundary">
    <!-- ... -->
  </NuxtErrorBoundary>
</template>

<script setup lang="ts">
const errorBoundary = useTemplateRef('errorBoundary')

// errorBoundary.value?.error
// errorBoundary.value?.clearError()
</script>