Files
xiaomai 3909f614d2 feat(ui): implement dashboard layout and refactor pages
This commit replaces the previous simple layout with a comprehensive dashboard interface using Nuxt UI Pro components.

- Introduced a new default layout with `UDashboardSidebar` and `UDashboardPanel`.
- Refactored the main page (`index.vue`) by splitting it into `ItemManageStatistics` and `ItemManageTable` components.
- Added new computed stats for monthly growth and total images, and displayed them in new statistic cards.
- Reorganized components from `item/` to a new `itemManage/` directory.
- Added custom primary and secondary theme colors.
2025-10-21 14:16:27 +08:00

55 lines
1.1 KiB
Vue

<template>
<div>
<!-- 导航栏 -->
<UHeader>
<template #title>物品数据库</template>
<UNavigationMenu :items="items" />
<template #right>
<UColorModeButton />
<UTooltip text="Open on GitHub" :kbds="['meta', 'G']">
<UButton
color="neutral"
variant="ghost"
to="https://github.com/nuxt/ui"
target="_blank"
icon="i-simple-icons-github"
aria-label="GitHub"
/>
</UTooltip>
</template>
</UHeader>
<!-- 页面内容插槽 -->
<slot />
</div>
</template>
<script setup lang="ts">
import type { NavigationMenuItem } from "@nuxt/ui";
const route = useRoute();
const items = computed<NavigationMenuItem[]>(() => [
{
label: "物品管理",
to: "/",
icon: "marketeq:box",
},
{
label: "导出配置",
to: "/export",
active: route.path.startsWith("/export"),
icon: "marketeq:export-2",
},
{
label: "历史记录",
to: "/history",
active: route.path.startsWith("/history"),
icon: "marketeq:chart-line-alt-1",
},
]);
</script>