Sidenav 侧导航

对页面侧边栏的 Nav 组件的封装。

获取组件

import { Sidenav, Nav } from 'rsuite';

演示

默认

子菜单

分组标题

使用 Sidenav.GroupLabel 来定义导航的分组标题。

Sidenav 顶部

使用 Sidenav.Header 来定义导航顶部的内容,比如 Logo、搜索框等。

Sidenav 底部

使用 Sidenav.Footer 来定义导航底部的内容,比如折叠导航的切换按钮。

可控的展开与折叠导航

自定义面板和分割线

你可以通过在 Nav.Item 上使用 paneldivider 属性来自定义导航的内容。

带徽标

使用 Badge 组件来显示子菜单中的项目数量。

外观

appearance 属性允许你定义 Sidenav 的外观。可用的值包括 defaultinversesubtleinverse 值可用于创建与默认外观视觉上不同的 Sidenav。subtle 值可用于创建具有简约外观的 Sidenav。

在高对比度主题下,所有外观都与 default 外观相同。

Props

<Sidenav>

属性名称 类型 (默认值) 描述
appearance 'default' | 'inverse' | 'subtle' ('default') 设置侧边导航的视觉外观样式
as ElementType ('div') 自定义根组件的 HTML 元素类型
classPrefix string ('sidenav') 组件 CSS 类名的前缀
defaultOpenKeys string[] 初始展开下拉菜单项的键值数组
expanded boolean (true) 控制侧边导航的展开/折叠状态
onOpenChange (openKeys: string[], event) => void 菜单项打开状态变化时的回调函数
openKeys string[] 受控的展开下拉菜单项的键值数组

<Sidenav.Header>

属性名称 类型 (默认值) 描述
as ElementType ('div') 自定义头部组件的 HTML 元素类型
classPrefix string ('sidenav-header') 头部组件 CSS 类名的前缀

<Sidenav.Body>

属性名称 类型 (默认值) 描述
as ElementType ('div') 自定义主体组件的 HTML 元素类型
classPrefix string ('sidenav-body') 主体组件 CSS 类名的前缀

Version 6.0.0 or above

属性名称 类型 (默认值) 描述
as ElementType ('div') 自定义底部组件的 HTML 元素类型
classPrefix string ('sidenav-footer') 底部组件 CSS 类名的前缀

<Sidenav.Toggle>

Version 6.0.0 or above

属性名称 类型 (默认值) 描述
as ElementType ('button') 自定义切换按钮的 HTML 元素类型
classPrefix string ('sidenav-toggle') 切换按钮 CSS 类名的前缀
expanded boolean 控制切换按钮的展开/折叠状态
onToggle (expanded: boolean) => void 切换状态变化时的回调函数

<Sidenav.GroupLabel>

Version 6.0.0 or above

属性名称 类型 (默认值) 描述
as ElementType ('div') 自定义分组标签的 HTML 元素类型
classPrefix string ('sidenav-group-label') 分组标签 CSS 类名的前缀