开发指南
何时使用
分为顶部导航和侧边导航,顶部导航提供全局性的类目和功能,侧边导航提供多级结构来收纳和排列网站架构。
注意事项
iconOnly 只适用垂直方向。
Nav 继承自 Menu,除特殊说明外,可使用 Menu 的 API。
分为顶部导航和侧边导航,顶部导航提供全局性的类目和功能,侧边导航提供多级结构来收纳和排列网站架构。
iconOnly 只适用垂直方向。
Nav 继承自 Menu,除特殊说明外,可使用 Menu 的 API。
Nav 提供了丰富的配置,可以进行个性化定制。
Nav 可设置 iconOnly 属性,只显示图标,以减少占用空间。
建议只在垂直布局中使用。
当 Nav 的 mode="inline" 时,openMode 可控制同级内联子导航的展开数量。
当 Nav 的 mode="popup" 时,popAlign 可控制弹出子导航的对齐方式。
Nav 可设置 noBg 属性,使选中状态时没有背景色。
继承自
Menu
的能力请查看Menu
文档
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
children | 导航项和子导航 | ReactNode | - |
type | 导航类型 可选值: 'normal'(普通) 'primary'(主要) 'secondary'(次要) 'line'(线形) | Enum | 'normal' |
direction | 导航布局 可选值: 'hoz'(水平) 'ver'(垂直) | Enum | 'ver' |
hozAlign | 横向导航条 items 和 footer 的对齐方向,在 direction 设置为 'hoz' 并且 header 存在时生效 可选值: 'left', 'right' | Enum | 'left' |
activeDirection | 设置组件选中状态的 active 边方向 可选值: null(无) 'top'(上) 'bottom'(下) 'left'(左) 'right'(右) | Enum | 当 direction 为 'hoz' 时,默认值为 'bottom',当 direction 为 'ver' 时,默认值为 'left' |
mode | 子导航打开的模式(水平导航只支持弹出) 可选值: 'inline', 'popup' | Enum | 'inline' |
triggerType | 子导航打开的触发方式 可选值: 'click', 'hover' | Enum | 'click' |
inlineIndent | 内联子导航缩进距离 | Number | 20 |
defaultOpenAll | 初始展开所有的子导航,只在 mode 设置为 'inline' 以及 openMode 设置为 'multiple' 下生效 | Boolean | false |
openMode | 内联子导航的展开模式,同时可以展开一个同级子导航还是多个同级子导航,该属性仅在 mode 为 inline 时生效 可选值: 'single', 'multiple' | Enum | 'multiple' |
selectedKeys | 当前选中导航项的 key 值 | String/Array | - |
defaultSelectedKeys | 初始选中导航项的 key 值 | String/Array | [] |
onSelect | 选中或取消选中导航项触发的回调函数 签名: Function(selectedKeys: Array, item: Object, extra: Object) => void 参数: selectedKeys: {Array} 选中的所有导航项的 key item: {Object} 选中或取消选中的导航项 extra: {Object} 额外参数 extra.select: {Boolean} 是否是选中 extra.key: {Array} 导航项的 key extra.label: {Object} 导航项的文本 extra.keyPath: {Array} 导航项 key 的路径 | Function | - |
popupAlign | 弹出子导航的对齐方式(水平导航只支持 follow ) 可选值: 'follow', 'outside' | Enum | 'follow' |
popupClassName | 弹出子导航的自定义类名 | String | - |
iconOnly | 是否只显示图标 | Boolean | - |
noBg | 选中状态时是否显示背景色 | Boolean | false |
hasArrow | 是否显示右侧的箭头(仅在 iconOnly=true 时生效) | Boolean | true |
hasTooltip | 是否有 ToolTips (仅在 iconOnly=true 时生效) | Boolean | false |
header | 自定义导航头部 | ReactNode | - |
footer | 自定义导航尾部 | ReactNode | - |
embeddable | 是否开启嵌入式模式,一般用于 Layout 的布局中,开启后没有默认背景、外层 border、box-shadow,可以配合<Nav style={{lineHeight: '100px'}}> 自定义高度 | Boolean | false |
继承自
Menu.Group
的能力请查看Menu.Group
文档
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
label | 标签内容 | ReactNode | - |
children | 导航项和子导航 | ReactNode | - |
继承自
Menu.Item
的能力请查看Menu.Item
文档
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
icon | 自定义图标,可以使用 Icon 的 type,也可以使用组件 <Icon type="icon type" /> | String/ReactNode | - |
children | 导航内容 | ReactNode | - |
继承自
Menu.PopupItem
的能力请查看Menu.PopupItem
文档
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
icon | 自定义图标,可以使用 Icon 的 type, 也可以使用组件 <Icon type="icon type" /> | String/ReactNode | - |
label | 标签内容 | ReactNode | - |
children | 弹出内容 | ReactNode | - |
继承自
Menu.SubMenu
的能力请查看Menu.SubMenu
文档
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
icon | 自定义图标,可以使用 Icon 的 type,也可以使用组件 <Icon type="your type" /> | String/ReactNode | - |
label | 标签内容 | ReactNode | - |
selectable | 是否可选 | Boolean | false |
children | 导航项和子导航 | ReactNode | - |
按键 | 说明 |
---|---|
Up Arrow | 导航到上一项 |
Down Arrow | 导航到下一项 |
Right Arrow | 打开子菜单,导航到子菜单第一项;横向菜单条第一层,导航到右一项 |
Left Arrow | 关闭子菜单,导航到父级菜单;横向菜单条第一层,导航到左一项 |
Enter | 打开子菜单,导航到子菜单第一项 |
Esc | 关闭子菜单,导航到父级菜单 |