Files
qnc-webview-v3/src/views/NotFound.vue
2026-02-28 14:33:47 +08:00

186 lines
3.8 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="not-found">
<div class="not-found-content">
<h1>404</h1>
<h2>页面未找到</h2>
<p>抱歉您访问的页面不存在或已被移除</p>
<div class="suggestions">
<h3>您可以尝试</h3>
<ul>
<li><router-link to="/">返回首页</router-link></li>
<li><router-link to="/help">查看帮助中心</router-link></li>
<li><router-link to="/service">联系客服</router-link></li>
</ul>
</div>
<div class="actions">
<router-link to="/" class="home-link">返回首页</router-link>
<router-link to="/help" class="help-link">帮助中心</router-link>
</div>
</div>
</div>
</template>
<script setup>
import { onMounted } from 'vue'
import { useSEO } from '@/composables/useSEO'
// SEO优化
const { updateSEO } = useSEO()
onMounted(() => {
updateSEO({
title: '404 - 页面未找到 | 全能查',
description: '抱歉,您访问的页面不存在。全能查专业大数据风险管控平台,提供大数据风险报告查询、婚姻状况查询、个人信用评估等服务。',
keywords: '404, 页面未找到, 全能查, 大数据风险管控',
url: 'https://www.quannengcha.com/404'
})
})
</script>
<style scoped>
.not-found {
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
padding: 20px;
}
.not-found-content {
background: white;
padding: 60px 40px;
border-radius: 20px;
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
text-align: center;
max-width: 600px;
width: 100%;
}
.not-found h1 {
font-size: 120px;
color: #667eea;
margin: 0 0 20px 0;
font-weight: bold;
line-height: 1;
}
.not-found h2 {
font-size: 32px;
color: #333;
margin: 0 0 20px 0;
font-weight: 600;
}
.not-found p {
font-size: 18px;
color: #666;
margin-bottom: 30px;
line-height: 1.6;
}
.suggestions {
margin: 30px 0;
text-align: left;
}
.suggestions h3 {
font-size: 20px;
color: #333;
margin-bottom: 15px;
text-align: center;
}
.suggestions ul {
list-style: none;
padding: 0;
margin: 0;
}
.suggestions li {
margin: 10px 0;
padding: 10px 0;
border-bottom: 1px solid #eee;
}
.suggestions li:last-child {
border-bottom: none;
}
.suggestions a {
color: #667eea;
text-decoration: none;
font-size: 16px;
transition: color 0.3s;
}
.suggestions a:hover {
color: #5a6fd8;
text-decoration: underline;
}
.actions {
margin-top: 40px;
display: flex;
gap: 20px;
justify-content: center;
flex-wrap: wrap;
}
.home-link, .help-link {
display: inline-block;
padding: 15px 30px;
font-size: 16px;
font-weight: 600;
text-decoration: none;
border-radius: 50px;
transition: all 0.3s ease;
min-width: 140px;
}
.home-link {
color: #fff;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
.home-link:hover {
transform: translateY(-2px);
box-shadow: 0 10px 20px rgba(102, 126, 234, 0.3);
}
.help-link {
color: #667eea;
background: white;
border: 2px solid #667eea;
}
.help-link:hover {
background: #667eea;
color: white;
transform: translateY(-2px);
}
@media (max-width: 768px) {
.not-found-content {
padding: 40px 20px;
}
.not-found h1 {
font-size: 80px;
}
.not-found h2 {
font-size: 24px;
}
.actions {
flex-direction: column;
align-items: center;
}
.home-link, .help-link {
width: 100%;
max-width: 200px;
}
}
</style>