Components

AppShell 应用布局

为开发者控制台提供桌面侧栏、移动端抽屉入口与受约束的内容区骨架。

响应式控制台骨架

桌面端可收起侧栏;小于 lg 时使用 mobile-menu-trigger 插槽将同一导航放入 Sheet。

Webhook 投递记录

近 24 小时投递

内容区使用 wide 宽度约束,页面仍可按需提供自己的内边距。

<AppShell
  v-model:collapsed="sidebarCollapsed"
  sidebar-width="16rem"
  collapsed-sidebar-width="4.5rem"
  content-width="wide"
>
  <template #sidebar="{ collapsed }">
    <Sidebar :collapsed="collapsed"><!-- desktop navigation --></Sidebar>
  </template>

  <template #mobile-menu-trigger>
    <Sheet side="left" title="Navigation">
      <template #trigger><Button aria-label="Open navigation">Menu</Button></template>
      <!-- render the same navigation data here -->
    </Sheet>
  </template>

  <template #header><ConsoleHeader /></template>
  <main><!-- page content --></main>
</AppShell>

导航职责边界

AppShell

负责应用级骨架:桌面侧栏宽度、收起状态、顶部区域、移动端菜单入口和内容宽度。不拥有路由或菜单数据。

Sidebar

负责控制台的纵向导航容器:固定头尾、可滚动主体和折叠时的呈现。将同一导航数据复用于 Sheet,避免维护两套导航来源。

NavigationMenu

负责页面内或顶栏中的水平导航与可展开面板。不要用它替代 Sidebar,也不要让同一层级的路由同时由两者渲染。

API 参考

属性类型默认值说明
v-model:collapsedbooleanfalse桌面侧栏是否以 collapsedSidebarWidth 收起。侧栏内容通过 sidebar 插槽参数和 Sidebar collapsed prop 自行呈现精简状态。
sidebarWidthstring'16rem'展开时的桌面侧栏宽度,可传任意 CSS 尺寸。
collapsedSidebarWidthstring'4.5rem'收起时的桌面侧栏宽度,通常应容纳导航图标。
contentWidth'full' | 'wide' | 'default' | 'narrow''full'默认内容槽的最大宽度约定:full 不约束、wide 为 90rem、default 为 76rem、narrow 为 64rem。
sidebarLabelstring'应用侧边栏'桌面侧栏 landmark 的无障碍标签。
sidebarslot—桌面侧栏。插槽参数为 collapsed 和 toggleCollapsed。
mobile-menu-triggerslot—仅在 lg 以下显示。将 Sheet trigger 放在这里,并复用与桌面 Sidebar 相同的导航数据。
header / defaultslot—粘性顶栏和主内容区。header 插槽同样接收 collapsed 与 toggleCollapsed。
Sidebar collapsedbooleanfalse传递给 Sidebar 的折叠状态;所有三个 Sidebar 插槽都可读取 collapsed 参数。