1.7 KiB
1.7 KiB
Menu
控件功能:用于创建可交互的菜单组件,支持静态菜单项、嵌套子菜单以及动态加载远程子菜单。点击菜单项可触发页面跳转或弹出窗口等行为。
类型:容器控件
父类控件:bricks.VBox
初始化参数
| 参数名 | 类型 | 说明 |
|---|---|---|
options.bgcolor |
String | 菜单背景颜色,默认为 "white" |
options.items |
Array | 菜单项数组,每个项包含 label、url、icon、target 等属性(详见 create_menuitem 和 create_children 方法) |
options.item_cheight |
Number | 菜单项的高度单位(cheight),影响图标和文本布局 |
options.menuitem_css |
String | 自定义菜单项的 CSS 样式名称 |
options.target |
String | 点击菜单项后目标容器类型,如 'PopupWindow', 'Popup' 或其他 widget ID |
options.popup_options |
Object | 弹窗相关配置选项,用于定制 PopupWindow 或 Popup 的显示行为 |
注:
options还会传递给父类VBox,继承其通用布局参数。
主要事件
-
item_click
触发时机:用户点击某个菜单项时
回调参数:item对象(包含label,url,icon,target等字段)
处理逻辑:根据item.target决定打开方式(新窗口、弹窗或替换指定控件内容),并通过widgetBuild加载对应 URL 内容。 -
command
触发时机:在menu_clicked处理完导航逻辑后派发
回调参数:与item_click相同的opts对象
用途:通知外部系统执行附加命令或进行状态更新。
事件绑定通过
this.bind('item_click', ...)在构造函数中设置,并由regen_menuitem_event触发。