Как реализовать настраиваемые страницы ошибок в NuxtJS 3?

Я пытаюсь заставить мое приложение NuxtJS 3 отображать пользовательские страницы ошибок. Приложение универсально с SSR. В документах NuxtJS 2 говорится, что нужно добавить layouts/error.vueфайл, и он должен быть поднят. Однако при использовании NuxtJS 3 моя настраиваемая страница никогда не отображается - либо из-за жесткой перезагрузки, либо при переходе по неработающей ссылке с помощью <NuxtLink> через роутер.

Изменились ли пользовательские страницы ошибок в NuxtJS 3? Похоже, что в документации по ним нет документации https://v3.nuxtjs.org/docs/directory-structure/layouts.

2 ответа

https://v3.nuxtjs.org/guide/features/обработка ошибок/#пример

Вы можете настроить эту страницу ошибки, добавив ~/error.vue в исходный каталог вашего приложения вместе с app.vue. На этой странице есть единственная ошибка - ошибка, которая содержит ошибку, которую вы должны обработать.

./error.vue (вместе с app.vue)

      <template>
  <button @click="handleError">Clear errors</button>
</template>

<script setup>
const props = defineProps({
  error: Object
})

const handleError = () => clearError({ redirect: '/' })
</script>

Если добавить страницу ошибки в корень, а не в папку layouts, то работает!

Другие вопросы по тегам