mirror of
https://gitee.com/beijing_hongye_huicheng/lilishop-ui.git
synced 2026-11-09 02:18:55 +08:00
- buyer(95) / seller(169) / im(53) / manager(280) 共 597 个组件全部从 Options API 转换为 <script setup> - 四端 vuex 全部移除,状态管理统一迁移至 pinia 4(stores/ 目录) - util.js 等基础设施去除 vm 首参依赖;全局属性($Message/$filters 等)在 script 内改为具名导入 - 被外部 ref 访问的公共组件均已补齐 defineExpose(清单见各端 MIGRATION-VUE3.md) - 各端 eslint 启用 vue/component-api-style 防止新代码回退 Options API - 四端 yarn build 全部通过;迁移约定与注意事项已更新至各端 MIGRATION-VUE3.md
99 lines
1.7 KiB
Vue
99 lines
1.7 KiB
Vue
<template>
|
||
<div>
|
||
<div class="not-found">
|
||
<div class="not-found-left">
|
||
<SvgNotFount class="svg-notfount" />
|
||
</div>
|
||
<div class="not-found-right">
|
||
<h1>404</h1>
|
||
<p>抱歉,你访问的页面不存在或仍在开发中...</p>
|
||
<div>
|
||
<el-button type="primary" size="small" @click="toHome">
|
||
返回首页 ({{ second }}S)
|
||
</el-button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
<script setup>
|
||
import { ref, onBeforeUnmount } from 'vue'
|
||
import { useRouter } from 'vue-router'
|
||
import { SvgNotFount } from '@/core/icons'
|
||
|
||
defineOptions({ name: 'NotFoundPage' })
|
||
|
||
const router = useRouter()
|
||
|
||
const second = ref(10)
|
||
let timer = null
|
||
|
||
timer = setInterval(() => {
|
||
second.value--
|
||
if (second.value == 0) {
|
||
clearInterval(timer)
|
||
toHome()
|
||
}
|
||
}, 1000)
|
||
|
||
onBeforeUnmount(() => {
|
||
clearInterval(timer)
|
||
})
|
||
|
||
function toHome() {
|
||
router.push({
|
||
path: '/',
|
||
})
|
||
}
|
||
</script>
|
||
<style lang="less" scoped>
|
||
.not-found {
|
||
position: fixed;
|
||
width: 600px;
|
||
height: 300px;
|
||
left: 50%;
|
||
top: 50%;
|
||
transform: translate(-50%, -50%);
|
||
|
||
.not-found-left {
|
||
width: 300px;
|
||
height: 300px;
|
||
float: left;
|
||
|
||
.svg-notfount {
|
||
width: 300px;
|
||
height: 300px;
|
||
}
|
||
}
|
||
|
||
.not-found-right {
|
||
width: 300px;
|
||
height: 300px;
|
||
float: left;
|
||
|
||
h1 {
|
||
margin-bottom: 24px;
|
||
color: #434e59;
|
||
font-weight: 600;
|
||
font-size: 72px;
|
||
line-height: 72px;
|
||
padding-left: 30px;
|
||
margin-top: 50px;
|
||
}
|
||
|
||
p {
|
||
padding-left: 30px;
|
||
margin-bottom: 16px;
|
||
color: rgba(0, 0, 0, 0.45);
|
||
font-size: 20px;
|
||
line-height: 28px;
|
||
}
|
||
|
||
div {
|
||
padding-left: 30px;
|
||
margin-top: 20px;
|
||
}
|
||
}
|
||
}
|
||
</style>
|