|
|
@@ -4,8 +4,10 @@
|
|
|
*
|
|
|
* 为何占位:这些菜单项(题库/练习分析/用户角色/任务监控/操作日志)属教学/系统域,
|
|
|
* 尚未落地 mock 端点与后端契约;为避免菜单点击后打未覆盖端点弹 "mock 未覆盖" toast,
|
|
|
- * 占位页**不发任何请求**,仅静态展示"建设中"。后续对应域补 mock 端点后替换本页。
|
|
|
+ * 占位页**不发任何请求**,仅静态展示"开发中"。后续对应域补 mock 端点后替换本页。
|
|
|
*
|
|
|
+ * 视觉(P2-3 统一"开发中"卡片,token §3 卡片口径):白卡 + 边框 + 圆角,居中;
|
|
|
+ * el-empty 承载说明,mark 用页签前 2 字(墨蓝块)点明"哪个模块",配"开发中"角标。
|
|
|
* 入参:title(页签名)/ desc(可选说明)。
|
|
|
*/
|
|
|
defineProps<{
|
|
|
@@ -18,11 +20,14 @@ defineProps<{
|
|
|
|
|
|
<template>
|
|
|
<div class="placeholder">
|
|
|
- <el-empty :description="desc || '该模块功能建设中,敬请期待'">
|
|
|
- <template #image>
|
|
|
- <div class="placeholder__mark">{{ title.slice(0, 2) }}</div>
|
|
|
- </template>
|
|
|
- </el-empty>
|
|
|
+ <div class="placeholder__card">
|
|
|
+ <span class="placeholder__badge">开发中</span>
|
|
|
+ <el-empty :description="desc || '该模块功能建设中,敬请期待'">
|
|
|
+ <template #image>
|
|
|
+ <div class="placeholder__mark">{{ title.slice(0, 2) }}</div>
|
|
|
+ </template>
|
|
|
+ </el-empty>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -31,6 +36,28 @@ defineProps<{
|
|
|
width: 100%;
|
|
|
padding: 48px 0;
|
|
|
}
|
|
|
+/* 品牌卡片(token §3:卡片 8 圆角、border、内容居中;无阴影——阴影仅浮层用) */
|
|
|
+.placeholder__card {
|
|
|
+ position: relative;
|
|
|
+ max-width: 560px;
|
|
|
+ margin: 0 auto;
|
|
|
+ background: var(--app-color-card);
|
|
|
+ border: 1px solid var(--app-color-border);
|
|
|
+ border-radius: 8px;
|
|
|
+ padding: 40px 24px 32px;
|
|
|
+}
|
|
|
+/* "开发中"角标(teal 浅底深字,主色系点缀) */
|
|
|
+.placeholder__badge {
|
|
|
+ position: absolute;
|
|
|
+ top: 16px;
|
|
|
+ right: 16px;
|
|
|
+ background: var(--app-color-teal-soft);
|
|
|
+ color: var(--app-color-teal-ink);
|
|
|
+ border-radius: 4px;
|
|
|
+ padding: 2px 10px;
|
|
|
+ font-size: var(--app-font-sm);
|
|
|
+ font-weight: 600;
|
|
|
+}
|
|
|
.placeholder__mark {
|
|
|
width: 64px;
|
|
|
height: 64px;
|
|
|
@@ -40,7 +67,7 @@ defineProps<{
|
|
|
justify-content: center;
|
|
|
font-size: 20px;
|
|
|
font-weight: 600;
|
|
|
- color: #fff;
|
|
|
+ color: var(--app-side-text);
|
|
|
background: var(--app-brand-navy);
|
|
|
}
|
|
|
</style>
|