Skip to content

Menu 菜单

为网站提供导航功能的菜单。

顶栏

左右

侧栏

Collapse 折叠面板

API

属性名说明类型可选值默认值
mode菜单展示模式stringhorizontal / verticalvertical
default-active页面加载时默认激活菜单的 indexstring
default-openeds默认打开的 sub-menu 的 index 的数组Array
unique-opened是否只保持一个子菜单的展开booleanfalse
router是否启用 vue-router 模式。 启用该模式会在激活导航时以 index 作为 path 进行路由跳转 使 default-active 来设置加载时的激活项。booleanfalse
menu-trigger子菜单打开的触发方式,只在 mode 为 horizontal 时有效stringhover / clickhover
collapse是否水平折叠收起菜单(仅在 mode 为 vertical 时可用booleanfalse
collapse-transition是否开启折叠动画booleantrue
ellipsis是否省略多余的子项(仅在横向模式生效)booleantrue
popper-effectTooltip 主题,内置了 dark / light 两种主题stringdark / lightdark
is-sub-select有多级菜单时,父级能否点击跳转booleanfalse
名称说明子标签
default自定义默认内容SubMenu / Menu-Item / Menu-Item-Group
方法名说明参数
open展开指定的 sub-menuindex: 需要打开的 sub-menu 的 index
close收起指定的 sub-menuindex: 需要收起的 sub-menu 的 index
事件名说明回调参数
select菜单激活回调index: 选中菜单项的 index, indexPath: 选中菜单项的 index path, item: 选中菜单项, routeResult: vue-router 的返回值(如果 router 为 true)
opensub-menu 展开的回调index: 打开的 sub-menu 的 index, indexPath: 打开的 sub-menu 的 index path
closesub-menu 收起的回调index: 收起的 sub-menu 的 index, indexPath: 收起的 sub-menu 的 index path
属性名说明类型可选值默认值
index唯一标志string
show-timeout展开 sub-menu 的延时number300
hide-timeout收起 sub-menu 的延时number300
popper-class为 popper 添加类名string
disabled是否禁用booleanfalse
popperAppendToBody是否将 popup 的下拉列表插入至 body 元素boolean一级子菜单:true / 非一级子菜单:false
popper-offset弹出窗口偏移number[6, 0]
expand-close-icon父菜单展开且子菜单关闭时的图标, expand-close-icon 和 expand-open-icon 需要一起配置才能生效string | Component
expand-open-icon父菜单展开且子菜单打开时的图标, expand-open-icon 和 expand-close-icon 需要一起配置才能生效string | Component
collapse-close-icon父菜单收起且子菜单关闭时的图标, expand-close-icon 和 expand-open-icon 需要一起配置才能生效string | Component
collapse-open-icon父菜单收起且子菜单打开时的图标, expand-open-icon 和 expand-close-icon 需要一起配置才能生效string | Component
名称说明子标签
default自定义默认内容SubMenu / Menu-Item / Menu-Item-Group
title自定义标题内容
属性名说明类型可选值默认值
index唯一标志string/nullnull
routeVue Router 路径对象object
disabled是否禁用booleanfalse
事件名说明回调参数
click菜单点击时的回调函数r-menu-item 实例
名称说明
default自定义默认内容
title自定义标题内容
属性名说明类型可选值默认值
title组标题string
名称说明子标签
default默认插槽内容Menu-Item
title自定义组标题内容

类型定义

组件导出以下类型定义:

ts
import type { MenuProps } from 'ryxon'

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值描述
--r-menu-active-colorvar(--r-primary-color)-
--r-menu-text-colorvar(--r-text-color-primary)-
--r-menu-hover-text-colorvar(--r-primary-color)-
--r-menu-bg-colorvar(--r-fill-color-blank)-
--r-menu-hover-bg-colorvar(--r-primary-color-light-9)-
--r-menu-item-height56px-
--r-menu-sub-item-heightcalc(var(--r-menu-item-height) - 6px)-
--r-menu-horizontal-sub-item-height36px-
--r-menu-item-font-sizevar(--r-font-size-md)-
--r-menu-item-hover-fillvar(--r-primary-color-light-9)-
--r-menu-border-colorvar(--r-border-color)-
--r-menu-base-level-padding20px-
--r-menu-level-padding20px-
--r-menu-icon-width24px-

Released under the MIT License.