mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-12 16:05:12 +08:00
feat: 重构战报弹窗与模拟器视图,优化UI与逻辑
重构BattleReportDialog和BattleSimulatorView相关静态资源,替换旧版JS/CSS文件,提升界面一致性和交互体验。新增和优化空状态、滚动区域等通用UI组件,移除部分冗余composable,完善多语言内容。引入导弹逻辑,补充版本检测工具,提升整体代码结构和可维护性。
This commit is contained in:
34
src/views/NotFoundView.vue
Normal file
34
src/views/NotFoundView.vue
Normal file
@@ -0,0 +1,34 @@
|
||||
<template>
|
||||
<div class="container mx-auto p-4 sm:p-6 flex items-center justify-center min-h-[60vh]">
|
||||
<Empty class="border-0">
|
||||
<EmptyMedia>
|
||||
<div class="text-8xl sm:text-9xl font-bold text-muted-foreground/20">404</div>
|
||||
</EmptyMedia>
|
||||
<EmptyHeader>
|
||||
<EmptyTitle>{{ t('notFound.title') }}</EmptyTitle>
|
||||
<EmptyDescription>{{ t('notFound.description') }}</EmptyDescription>
|
||||
</EmptyHeader>
|
||||
<EmptyContent>
|
||||
<Button @click="goHome" size="lg">
|
||||
<Home class="mr-2 h-4 w-4" />
|
||||
{{ t('notFound.goHome') }}
|
||||
</Button>
|
||||
</EmptyContent>
|
||||
</Empty>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useI18n } from '@/composables/useI18n'
|
||||
import { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle } from '@/components/ui/empty'
|
||||
import { Button } from '@/components/ui/button'
|
||||
import { Home } from 'lucide-vue-next'
|
||||
|
||||
const router = useRouter()
|
||||
const { t } = useI18n()
|
||||
|
||||
const goHome = () => {
|
||||
router.push('/')
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user