| | |
| | | } |
| | | }; |
| | | const loadDataToMap = dataList => { |
| | | console.log('dataList',dataList); |
| | | |
| | | if (!viewer) return; |
| | | viewer.entities.removeAll(); |
| | | // 存储所有有效坐标 |
| | |
| | | initMap(); |
| | | cesiumContextMenu(); |
| | | getdataFolderApi(); |
| | | // 监听单个实体删除事件 |
| | | EventBus.on('deleteMapEntityById', deleteMapEntityById); |
| | | // 监听文件夹下所有实体删除事件 |
| | | EventBus.on('deleteMapEntitiesByFolderId', deleteMapEntitiesByFolderId); |
| | | }); |
| | | onBeforeUnmount(() => { |
| | | destroyMap(); |
| | | cesiumContextMenu(false); |
| | | // 移除事件监听 |
| | | EventBus.off('deleteMapEntityById', deleteMapEntityById); |
| | | EventBus.off('deleteMapEntitiesByFolderId', deleteMapEntitiesByFolderId); |
| | | }); |
| | |
| | | // 删除文件夹下所有地图实体 |
| | | const deleteMapEntitiesByFolderId = folderId => { |
| | | if (!viewer) return; |
| | | // 假设围栏数据中包含 folder_id 字段,根据文件夹ID过滤 |
| | | const entitiesToDelete = viewer.entities.values.filter(entity => { |
| | | return entity.customInfo?.folder_id === folderId; |
| | | }); |