# error.vue

> Файл error.vue — это страница с ошибкой в приложении Nuxt.

В жизненном цикле приложения ошибки иногда возникают неожиданно. Файл `error.vue` позволяет заменить стандартный экран ошибки и показать своё оформление.

```vue [error.vue]
<script setup lang="ts">
import type { NuxtError } from '#app'

const props = defineProps({
  error: Object as () => NuxtError,
})
</script>

<template>
  <div>
    <h1>{{ error.statusCode }}</h1>
    <NuxtLink to="/">Вернуться на домашнюю страницу</NuxtLink>
  </div>
</template>
```

<note>

Несмотря на название «страница ошибок», это не маршрут: файл не кладут в `~/pages` и не вызывают в нём `definePageMeta`. Лейаут по-прежнему можно подключить через [`NuxtLayout`](/docs/3.x/api/components/nuxt-layout), указав имя лейаута.

</note>

У компонента одно входное свойство — `error` с данными об ошибке.

Объект `error` предоставляет следующие поля:

```ts
interface NuxtErrorFields {
  statusCode: number
  fatal: boolean
  unhandled: boolean
  statusMessage?: string
  data?: unknown
  cause?: unknown
}
```

Произвольные поля на объекте ошибки не сохраняются. Передавайте их в `data`:

```ts
throw createError({
  statusCode: 404,
  statusMessage: 'Страница не найдена',
  data: {
    myCustomField: true,
  },
})
```
