| | |
| | | weight: 0, // 隐藏多边形边框,使用折线作为边框 |
| | | }); |
| | | |
| | | polygon.on('click', function(e) { |
| | | handlePolygonClick(item, e); |
| | | }); |
| | | |
| | | // 创建折线(边框) |
| | | const polyline = L.polyline([...latLngs, latLngs[0]], { // 闭合多边形 |
| | | color: item.airspaceType === '0' ? '#00ff06' : '#ff0000', |
| | |
| | | }); |
| | | } |
| | | |
| | | // 点击事件处理函数 |
| | | function handlePolygonClick(item, event) { |
| | | // 把值返回给父组件 |
| | | EventBus.emit('mapClickAirspace', item) |
| | | } |
| | | |
| | | const mapClearMarker = () => { |
| | | addressMarkersLayer.clearLayers() |
| | | } |
| | |
| | | // 使用新接口搜索地址 |
| | | const searchWithNewAPI = () => { |
| | | // 获取微信小程序带过来的头部参数 |
| | | console.log(route.query, '9999') |
| | | // console.log(route.query, '9999') |
| | | // 构建请求参数,搜索框为空时不传递airspaceName |
| | | const params = { |
| | | current: 1, |
| | |
| | | getAddressList() |
| | | } |
| | | |
| | | // 获取点击的空域区域 |
| | | const getClickAirspace = () => { |
| | | EventBus.on('mapClickAirspace', item => { |
| | | searchVal.value = item.taskName |
| | | height.value = 150 |
| | | searchWithNewAPI() |
| | | }) |
| | | } |
| | | |
| | | const flyToAddress = item => { |
| | | // if (!item.location) { |
| | | // showToast('当前地址无坐标信息') |
| | |
| | | watch( |
| | | () => route.query, |
| | | (newValue, oldValue) => { |
| | | console.log(newValue, oldValue, '111111') |
| | | if (newValue.updateKey) { |
| | | height.value = anchors[0] |
| | | } |
| | |
| | | } |
| | | } |
| | | getAddressList() |
| | | getClickAirspace() |
| | | }) |
| | | onUnmounted(() => { |
| | | EventBus.off('mapClickAirspace') |
| | | }) |
| | | </script> |
| | | |