MenuItem
此类表示一个菜单项。
构造函数
| 构造函数 | 描述 |
|---|---|
| MenuItem(text: String, callback: Function, opts: MenuItemOptions) | 创建一个菜单项。当菜单项被点击时,系统将会以当前菜单弹出的地理坐标点作为参数调用回调函数callback |
MenuItemOptions
| 属性名 | 类型 | 描述 |
|---|---|---|
| width | Number | 指定此菜单项的宽度,菜单以最长的菜单项宽度为准 |
| id | String | 指定此菜单项dom的id |
方法
| 方法 | 返回值 | 描述 |
|---|---|---|
| setText(text: String) | none | 设置菜单项显示的文本 |
| enable() | none | 启用菜单项 |
| disable() | none | 禁用菜单项 |
示例
创建一个简单的菜单项:
ts
const menuItem = new BMapGL.MenuItem('放大', function(point) {
map.zoomIn();
});创建带配置的菜单项:
ts
const menuItem = new BMapGL.MenuItem('编辑', function(point) {
console.log('点击位置:', point);
}, {
width: 100,
id: 'edit'
});动态修改菜单项:
ts
// 修改文本
menuItem.setText('重命名');
// 禁用菜单项
menuItem.disable();
// 启用菜单项
menuItem.enable();常见用途
基础操作:
- 地图缩放
- 视角调整
- 地图类型切换
标注操作:
- 添加标注
- 编辑标注
- 删除标注
注意事项
回调函数:
- 回调函数会接收点击位置的地理坐标
- 建议处理回调函数中的异常
- 避免在回调中执行耗时操作
菜单项状态:
- 禁用状态下不会触发回调
- 可以动态修改文本内容
- 注意处理禁用状态的样式
