Skip to content

Menu ​

简易介绍 ​

Menu 导航菜单组件,提供侧边栏和顶部导航功能。mengyue-components 进行了封装并进行了 vitest 测试。 可以使用 <MYMenu></MYMenu> 或者 <MYMenu /> 来实现一个导航菜单组件。

基本用法 ​

垂直菜单 ​

默认的垂直菜单,支持多级嵌套。

代码演示
  • 🏠 首页
  • 📊 数据统计
  • 🔒 禁用菜单
展开代码

水平菜单 ​

使用 mode 属性设置为 horizontal 创建水平菜单。

代码演示
  • 首页
  • 产品
  • 关于我们
展开代码

自定义颜色 ​

使用 backgroundColor、textColor 和 activeTextColor 属性自定义菜单颜色。

代码演示
  • 🌟 金色主题
  • 🎨 色彩定制
展开代码

唯一展开菜单 ​

使用 unique-opened 属性确保同时只能展开一个子菜单。

代码演示
  • 📁 文档管理
展开代码

悬停触发 ​

使用 trigger 属性设置为 hover,通过悬停触发子菜单展开。

代码演示
  • 首页
  • 联系我们
展开代码

API 参考 ​

参数说明类型可选值默认值
default-active默认激活菜单的 indexstring—''
mode菜单模式stringvertical/horizontalvertical
collapse是否水平折叠收起菜单boolean—false
background-color菜单背景色string—#2f3b46
text-color菜单文字颜色string—#bfcbd9
active-text-color激活菜单的文字颜色string—#409EFF
trigger子菜单打开的触发方式stringclick/hoverclick
unique-opened是否只保持一个子菜单展开boolean—false
default-openeds默认打开的 sub-menu 的 index 数组array—[]
collapse-transition是否开启折叠动画boolean—true
参数说明类型可选值默认值
index唯一标识string—必需
disabled是否禁用boolean—false
参数说明类型可选值默认值
index唯一标识string—必需
trigger子菜单打开的触发方式stringclick/hover继承 Menu
teleported是否使用 teleportboolean—false

事件 ​

事件名说明参数
select菜单激活回调index: string, indexPath: string[]
opensub-menu 展开的回调index: string, indexPath: string[]
closesub-menu 收起的回调index: string, indexPath: string[]

类型定义 ​

typescript
interface MenuProps {
  defaultActive?: string;
  mode?: 'vertical' | 'horizontal';
  collapse?: boolean;
  backgroundColor?: string;
  textColor?: string;
  activeTextColor?: string;
  trigger?: 'click' | 'hover';
  uniqueOpened?: boolean;
  defaultOpeneds?: string[];
  collapseTransition?: boolean;
}

interface MenuItemProps {
  index: string;
  disabled?: boolean;
}

interface SubMenuProps {
  index: string;
  trigger?: 'click' | 'hover';
  teleported?: boolean;
}

基于 MIT 协议