Sidenav 侧导航

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

获取组件

import { Sidenav, Nav } from 'rsuite';

演示

默认

子菜单

分组标题

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

Sidenav 顶部

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

Sidenav 底部

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

可控的展开与折叠导航

自定义面板和分割线

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

带徽标

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

外观

appearance 属性允许你定义 Sidenav 的外观。可用的值包括 default、inverse 和 subtle。inverse 值可用于创建与默认外观视觉上不同的 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 类名的前缀