Files
music-admin/error.vue
poptong 83b162d2bd
Some checks failed
🚀 Deploy - Demo / deployment (push) Has been cancelled
🔧 웹훅 URL을 HTTPS로 수정
- 웹훅 URL을 https://admin.youtooplay.com/webhook로 변경
- Nginx 리버스 프록시 설정 파일 추가
- 배포 가이드 업데이트
2025-10-01 01:47:51 +09:00

81 lines
1.7 KiB
Vue

<script setup lang="ts">
import type { NuxtError } from 'nuxt/app'
import misc404 from '@images/pages/404.png'
defineOptions({
inheritAttrs: false,
})
const props = defineProps<{
error: NuxtError
}>()
const isDev = process.dev
const errToShow = computed(() => {
const is404 = props.error?.statusCode === 404 || props.error.message?.includes('404')
if (is404) {
return {
title: 'Page Not Found',
description: 'We couldn\'t find the page you are looking for.',
}
}
else if (isDev) {
return {
title: props.error?.statusMessage,
description: props.error.message,
}
}
return {
title: 'Oops! Something went wrong.',
description: 'We are working on it and we\'ll get it fixed as soon as we can',
}
})
const handleError = () => clearError({ redirect: '/' })
</script>
<template>
<NuxtLayout name="blank">
<div class="misc-wrapper">
<ErrorHeader
:status-code="props.error.statusCode"
:title="errToShow.title"
:description="errToShow.description"
/>
<!-- eslint-disable vue/no-v-html -->
<div
v-if="isDev"
style="max-inline-size: 80dvw; overflow-x: scroll;"
v-html="error.stack"
/>
<!-- eslint-enable -->
<VBtn
class="mb-6"
@click="handleError"
>
Back to Home
</VBtn>
<!-- 👉 Image -->
<div class="misc-avatar w-100 text-center">
<VImg
:src="misc404"
alt="Page Not Found"
:max-width="500"
class="mx-auto"
/>
</div>
</div>
</NuxtLayout>
</template>
<style lang="scss">
@use "@core/scss/template/pages/misc.scss";
</style>