| collapsed |
是否收起导航栏 |
boolean |
false |
| width |
导航宽度 |
number/string |
auto |
| className |
自定义样式class |
string |
null |
| openKeys |
展开的菜单 key 数组,受控属性,需要配合 onOpen 事件使用 |
string[] |
N/A |
| defaultOpenKeys |
默认状态下展开的 key 数组,仅在导航栏展开时有效 |
string[] |
[] |
| onOpen |
当菜单被收缩或展开时触发的回调函数,仅在导航栏展开时有效 |
(keys: string[]) => void |
默认不执行任何操作 |
| selectedKeys |
选中的菜单 key 数组,受控属性,需要配合 onSelect 事件使用 |
string[] |
N/A |
| defaultSelectedKeys |
默认状态下选中的 key 数组 |
string[] |
[] |
| onSelect |
当被选择的菜单项发生变化时触发的回调函数 |
(selectedKeys: string[], navItem: SliderBarNav.Item) => void |
默认不执行任何操作 |
| selectMode |
菜单选择的模式,支持单选("single")和多选("multiple"),默认为单选,空值则禁用选择功能 |
enum |
"single" |
| cascadeOpenKeys |
openKeys 中包含子节点时,会自动展开父节点 |
boolean |
false |
| textIcon |
为 true 时,若菜单内 Item 没有设置 icon 或 image,则默认取标题中的第一个字作为 icon。 |
boolean |
false |
| dataSource |
可以使用数据的形式配置菜单内的内容,指向一个对象树,详见 Demo。对象树中的节点包含 key 属性(对应 Item 的 key),title 属性(对应 Item 或 Category 的 title),type 属性(可用值 category,link,不填表示该节点为普通 Item)。 |
object[] |
默认为空 |
| itemOnClick |
使用 dataSource 属性配置数据时,自定义节点点击事件。参数为被点击的 Item 对应的 dataSource 中的节点对象。 |
(node: object) => void |
默认为空 |
| dataRenderCallback |
允许在使用 dataSource 属性配置数据时,自定义 dataSource 的格式(非特殊需求,不推荐使用) |
(node: object, extraProps: object) => ReactElement |
默认行为见 dataSource 属性描述 |