为网站提供导航功能的菜单。
let MenuDom: NavMenu
let setMenuActive = (key) => MenuDom.setMenuActive(key)
const changeMenu = (evt) => console.log('changeMenu', evt.detail)
<BeMenu class="be-menu-demo" active="1" mode="horizontal" bind:this={MenuDom} on:change={changeMenu}>
<BeMenuItem id="1">处理中心</BeMenuItem>
<BeSubMenu id="2">
<div slot="title">我的工作台</div>
<BeMenuItem id="2-1">选项1</BeMenuItem>
<BeMenuItem id="2-2">选项2</BeMenuItem>
<BeMenuItem id="2-3">选项3</BeMenuItem>
<BeSubMenu id="2-4">
<div slot="title">选项4</div>
<BeMenuItem id="2-4-1">选项1</BeMenuItem>
<BeMenuItem id="2-4-2">选项2</BeMenuItem>
<BeMenuItem id="2-4-3">选项3</BeMenuItem>
</BeSubMenu>
</BeSubMenu>
<BeMenuItem id="3" disabled>消息中心</BeMenuItem>
<BeMenuItem id="4">订单管理</BeMenuItem>
</BeMenu>
垂直菜单,可内嵌子菜单。
<div style="width: 200px;min-height: 200px;">
<BeMenu class="be-menu-demo" data={data1} active="2-1" mode="vertical" trigger="click">
<BeMenuItem id="1">处理中心</BeMenuItem>
<BeSubMenu id="2">
<div slot="icon">
<BeIcon name="app" />
</div>
<div slot="title">我的工作台</div>
<BeMenuItem id="2-1">
<div slot="icon">
<BeIcon name="app" />
</div>
选项1
</BeMenuItem>
<BeMenuItem id="2-2">选项2</BeMenuItem>
<BeMenuItem id="2-3">选项3</BeMenuItem>
<BeSubMenu id="2-4">
<div slot="title">选项4</div>
<BeMenuItem id="2-4-1">选项1</BeMenuItem>
<BeMenuItem id="2-4-2">选项2</BeMenuItem>
<BeMenuItem id="2-4-3">选项3</BeMenuItem>
</BeSubMenu>
</BeSubMenu>
<BeMenuItem id="3" disabled>消息中心</BeMenuItem>
<BeMenuItem id="4">订单管理</BeMenuItem>
</BeMenu>
</div>
let collapse = true;
const toggleCollapse = () => collapse = !collapse
<BeButton on:click={toggleCollapse}>切换 collapse</BeButton>
<div style="width: 200px;min-height: 200px;">
<BeMenu class="be-menu-demo" data={data1} active="1" mode="vertical" trigger="hover" {collapse}>
<BeMenuItem id="1">
<div slot="icon">
<BeIcon name="chart-bubble" />
</div>
处理中心
</BeMenuItem>
<BeSubMenu id="2">
<div slot="icon">
<BeIcon name="app" />
</div>
<div slot="title">我的工作台</div>
<BeMenuItem id="2-1">
<div slot="icon">
<BeIcon name="app" />
</div>
选项1
</BeMenuItem>
<BeMenuItem id="2-2">选项2</BeMenuItem>
<BeMenuItem id="2-3">选项3</BeMenuItem>
<BeSubMenu id="2-4">
<div slot="title">选项4</div>
<BeMenuItem id="2-4-1">选项1</BeMenuItem>
<BeMenuItem id="2-4-2">选项2</BeMenuItem>
<BeMenuItem id="2-4-3">选项3</BeMenuItem>
</BeSubMenu>
</BeSubMenu>
<BeMenuItem id="3" disabled>
<div slot="icon">
<BeIcon name="gift" />
</div>
消息中心
</BeMenuItem>
<BeMenuItem id="4">
<div slot="icon">
<BeIcon name="desktop" />
</div>
订单管理
</BeMenuItem>
</BeMenu>
</div>
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
active | 选中菜单标识Id | string | - | '' |
mode | 菜单方向 | string | horizontal/vertical | horizontal |
trigger | 触发形式 | string | hover/click | hover |
data | 菜单数据 | any[] | - | [] |
collapse | 展开收起的状态 | boolean | true/false | false |
isOnlyOne | 仅有一个下级菜单展开 | boolean | true/false | false |
事件名称 | 说明 | 回调参数 |
---|---|---|
setMenuActive | 设置选中的菜单(active) | |
change | 菜单改变的回调 | 当前选中菜单数据 |
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
id | 选中菜单标识Id | string | - | '' |