sections | SidebarSectionData[] | [] | sections={sections} | 分类数组,每项必填唯一 id,可选 title、collapsible、defaultCollapsed、actions、items、content;content 优先于 items。items 使用 SidebarItemData 的 id、label、icon、href 等字段。 |
navigationVariant | "icon" | "text" | "icon" | navigationVariant="icon" | 导航结构变体;text 表示无图标导航,折叠后根宽度与 padding 为零,只保留位于当前页面可视区域左上方的展开按钮;不自动扫描内容推断图标 |
collapsed | boolean | — | collapsed | 受控折叠状态,支持 bind:collapsed;未传时从 defaultCollapsed 初始化内部状态。 |
defaultCollapsed | boolean | false | defaultCollapsed | 非受控初始折叠状态 |
width | number | 220 | width={42} | 展开宽度,支持 bind:width;拖拽右侧边框时实时更新 |
minWidth | number | 160 | minWidth={42} | 可拖拽展开宽度下限 |
maxWidth | number | 480 | maxWidth={42} | 可拖拽展开宽度上限 |
resizable | boolean | true | resizable | 是否启用右侧边框调宽命中层 |
activeItemId | string | — | activeItemId="Example" | 外部控制的选中项 id;未传时使用内部选择或恢复的持久化值。仅选择状态,不自动替宿主进行路由。 |
persistence | boolean | true | persistence | 是否记忆 active item 与各 Section 折叠状态 |
persistenceKey | string | "default" | persistenceKey="Example" | localStorage 实例命名空间;同一页面存在多个 Sidebar 时必须分别设置 |
ariaLabel | string | — | ariaLabel="Example" | 导航及其滚动区域的可访问名称;省略时随 LocaleProvider 更新,显式值优先,多实例应提供可区分的名称。 |
continuousHover | boolean | true | continuousHover | 是否在可用导航项之间移动共享 hover 背景;关闭后恢复逐项 hover,选中状态不受影响。 |
onCollapsedChange | (collapsed: boolean) => void | — | onCollapsedChange={(value) => { /* handle value */ }} | 用户点击内置按钮切换后调用,参数为新折叠状态,不可取消。 |
onWidthChange | (width: number) => void | — | onWidthChange={(value) => { /* handle value */ }} | 用户调宽时调用,参数为夹取到 minWidth/maxWidth 的整数像素宽度。 |
onActiveItemChange | (itemId: string) => void | — | onActiveItemChange={(value) => { /* handle value */ }} | 导航选择或恢复合法持久化选中项时调用,参数为选中项 id;宿主处理内容与路由。 |
children | Snippet | — | <Sidebar>Content</Sidebar> | 无参数显式内容,与 sections 同时渲染;直属 as="logo" 替换 Header Logo,as="footer" 放入固定 Footer,其余内容进入导航区。 |
parts | ComponentPartsOf<{ Indicator: typeof Indicator; SnowUILogo: typeof SnowUILogo; SidebarSection: typeof SidebarSection; SidebarItem: typeof SidebarItem; }> | — | parts={partsOptions} | 配置调宽交互层使用的 Indicator,以及默认生成的 SnowUILogo / SidebarSection / SidebarItem;Indicator 复用默认状态视觉 |