edit
This commit is contained in:
		| @ -1,6 +0,0 @@ | |||||||
| <div nz-row style="margin-bottom: 24px"> |  | ||||||
|   <div nz-col nzSpan="8"> |  | ||||||
|     <input nz-input id="pickerInput" [(ngModel)]="addressInput" placeholder="请输入地址" /> |  | ||||||
|   </div> |  | ||||||
| </div> |  | ||||||
| <div class="map-container" id="container" tabindex="0" style="width: 800px; height: 500px"></div> |  | ||||||
| @ -1,65 +0,0 @@ | |||||||
| import { Component, Input, OnInit, Output, EventEmitter, OnDestroy } from '@angular/core'; |  | ||||||
| import { _HttpClient } from '@delon/theme'; |  | ||||||
| import { load } from '@amap/amap-jsapi-loader'; |  | ||||||
| import { BaseService } from 'src/app/shared/services'; |  | ||||||
| import { throwError } from 'rxjs'; |  | ||||||
| import AMapLoader from '@amap/amap-jsapi-loader'; |  | ||||||
| @Component({ |  | ||||||
|   selector: 'app-gaode-map', |  | ||||||
|   templateUrl: './gaode-map.component.html' |  | ||||||
| }) |  | ||||||
| export class GaodeMapComponent implements OnInit, OnDestroy { |  | ||||||
|   addressInput: any; |  | ||||||
|  |  | ||||||
|   aMap: any; |  | ||||||
|   constructor(private service: BaseService) {} |  | ||||||
|   ngOnInit(): void { |  | ||||||
|     this.mapInit(); |  | ||||||
|     // this.PoiPicker(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   ngOnDestroy(): void { |  | ||||||
|     if (this.aMap) { |  | ||||||
|       this.aMap.destroy(); |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   mapInit() { |  | ||||||
|     AMapLoader.load({ |  | ||||||
|       // 首次调用 load |  | ||||||
|       key: '63f9573ca55fef2b92d4ffe0c85dea8f', // 申请好的Web端开发者Key,首次调用 load 时必填 |  | ||||||
|       version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15 |  | ||||||
|       plugins: [ |  | ||||||
|         // 需要使用的的插件列表,如比例尺'AMap.Scale'等 |  | ||||||
|         'AMap.Scale', |  | ||||||
|         'AMap.ToolBar', |  | ||||||
|         'AMap.MapType', |  | ||||||
|         'AMap.Driving', |  | ||||||
|         'AMap.Geolocation' |  | ||||||
|       ], |  | ||||||
|       AMapUI: { |  | ||||||
|         // 是否加载 AMapUI,缺省不加载 |  | ||||||
|         version: '1.1', // AMapUI 缺省 1.1 |  | ||||||
|         plugins: [] // 需要加载的 AMapUI ui插件 |  | ||||||
|       }, |  | ||||||
|       Loca: { |  | ||||||
|         // 是否加载 Loca, 缺省不加载 |  | ||||||
|         version: '2.0' // Loca 版本,缺省 1.3.2 |  | ||||||
|       } |  | ||||||
|     }) |  | ||||||
|       .then(AMap => { |  | ||||||
|         console.log(AMap); |  | ||||||
|  |  | ||||||
|         this.aMap = new AMap.Map('container', { |  | ||||||
|           viewMode: '2D', // 默认使用 2D 模式,如果希望使用带有俯仰角的 3D 模式,请设置 viewMode: '3D', |  | ||||||
|           zoom: 16 |  | ||||||
|         }); |  | ||||||
|         this.aMap.on('complete', () => { |  | ||||||
|           this.service.msgSrv.info('地图加载完成 !'); |  | ||||||
|         }); |  | ||||||
|       }) |  | ||||||
|       .catch(e => { |  | ||||||
|         throwError(e); |  | ||||||
|       }); |  | ||||||
|   } |  | ||||||
| } |  | ||||||
| @ -1,6 +0,0 @@ | |||||||
| <div nz-row class="mb-xl"> |  | ||||||
|   <div nz-col nzSpan="8"> |  | ||||||
|     <input id="pickerInput" [(ngModel)]="addressInput" placeholder="请输入地址" /> |  | ||||||
|   </div> |  | ||||||
| </div> |  | ||||||
| <div class="map-container" id="container" tabindex="0" style="width: 800px; height: 500px"></div> |  | ||||||
| @ -1,8 +0,0 @@ | |||||||
| :host::ng-deep { |  | ||||||
|     p.my-desc { |  | ||||||
|         max-width      : 300px; |  | ||||||
|         margin     : 5px 0; |  | ||||||
|         line-height: 150%; |  | ||||||
|         padding    : 12px; |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| @ -1,181 +0,0 @@ | |||||||
| import { Component, Input, OnInit, Output, EventEmitter, OnDestroy, ViewChild } from '@angular/core'; |  | ||||||
| import { _HttpClient } from '@delon/theme'; |  | ||||||
| import { load } from '@amap/amap-jsapi-loader'; |  | ||||||
| import { BaseService } from 'src/app/shared/services'; |  | ||||||
| import { throwError } from 'rxjs'; |  | ||||||
| import AMapLoader from '@amap/amap-jsapi-loader'; |  | ||||||
| declare var AMap: any; |  | ||||||
| declare var AMapUI: any; |  | ||||||
| @Component({ |  | ||||||
|   selector: 'app-gaode-map', |  | ||||||
|   styleUrls: ['./gaode-map.component.less'], |  | ||||||
|   templateUrl: './gaode-map.component.html' |  | ||||||
| }) |  | ||||||
| export class GaodeMapComponent implements OnInit, OnDestroy { |  | ||||||
|   @ViewChild('modal') |  | ||||||
|   modal: any; |  | ||||||
|   addressInput: any; |  | ||||||
|  |  | ||||||
|   aMap: any; |  | ||||||
|   constructor(private service: BaseService) {} |  | ||||||
|   ngOnInit(): void { |  | ||||||
|     this.mapInit(); |  | ||||||
|     // this.PoiPicker(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   ngOnDestroy(): void { |  | ||||||
|     if (this.aMap) { |  | ||||||
|       this.aMap.destroy(); |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   mapInit() { |  | ||||||
|     console.log(AMapLoader); |  | ||||||
|  |  | ||||||
|     AMapLoader.load({ |  | ||||||
|       // 首次调用 load |  | ||||||
|       key: '63f9573ca55fef2b92d4ffe0c85dea8f', // 申请好的Web端开发者Key,首次调用 load 时必填 |  | ||||||
|       version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15 |  | ||||||
|       plugins: [ |  | ||||||
|         // 需要使用的的插件列表,如比例尺'AMap.Scale'等 |  | ||||||
|         'AMap.SimpleMarker', |  | ||||||
|         'AMap.PoiPicker', |  | ||||||
|         'AMap.Scale', |  | ||||||
|         'AMap.Marker', |  | ||||||
|         'AMap.InfoWindow', |  | ||||||
|         'AMap.ToolBar', |  | ||||||
|         'AMap.MapType', |  | ||||||
|         'AMap.Driving', |  | ||||||
|         'AMap.Geolocation' |  | ||||||
|       ], |  | ||||||
|       AMapUI: { |  | ||||||
|         // 是否加载 AMapUI,缺省不加载 |  | ||||||
|         version: '1.1', // AMapUI 缺省 1.1 |  | ||||||
|         plugins: ['overlay/SimpleMarker', 'misc/PoiPicker'] // 需要加载的 AMapUI ui插件 |  | ||||||
|       }, |  | ||||||
|       Loca: { |  | ||||||
|         // 是否加载 Loca, 缺省不加载 |  | ||||||
|         version: '2.0' // Loca 版本,缺省 1.3.2 |  | ||||||
|       } |  | ||||||
|     }) |  | ||||||
|       .then(AMap => { |  | ||||||
|         console.log(AMap); |  | ||||||
|  |  | ||||||
|         var poiPicker = new AMapUI.PoiPicker({ |  | ||||||
|           //city:'北京', |  | ||||||
|           input: 'pickerInput' |  | ||||||
|         }); |  | ||||||
|  |  | ||||||
|         console.log(poiPicker); |  | ||||||
|  |  | ||||||
|         this.aMap = new AMap.Map('container', { |  | ||||||
|           resizeEnable: true, |  | ||||||
|           zoom: 16 |  | ||||||
|         }); |  | ||||||
|         console.log(this.aMap); |  | ||||||
|  |  | ||||||
|         this.aMap.on('complete', () => { |  | ||||||
|           this.service.msgSrv.info('地图加载完成 !'); |  | ||||||
|           this.poiPickerReady(poiPicker); |  | ||||||
|           // new AMapUI.SimpleMarker({ |  | ||||||
|           //   //前景文字 |  | ||||||
|           //   iconLabel: 'A', |  | ||||||
|           //   //图标主题 |  | ||||||
|           //   iconTheme: 'default', |  | ||||||
|           //   //背景图标样式 |  | ||||||
|           //   iconStyle: 'red', |  | ||||||
|           //   map: this.aMap, |  | ||||||
|           //   position: this.aMap.getCenter() |  | ||||||
|           // }); |  | ||||||
|         }); |  | ||||||
|       }) |  | ||||||
|       .catch(e => { |  | ||||||
|         throwError(e); |  | ||||||
|       }); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   poiPickerReady(poiPicker: any) { |  | ||||||
|     (window as any).poiPicker = poiPicker; |  | ||||||
|     const map = this.aMap; |  | ||||||
|     const _this = this; |  | ||||||
|     var marker = new AMapUI.SimpleMarker(); |  | ||||||
|     console.log(marker); |  | ||||||
|  |  | ||||||
|     var infoWindow = new AMap.InfoWindow({ |  | ||||||
|       offset: new AMap.Pixel(0, -20) |  | ||||||
|     }); |  | ||||||
|     console.log(infoWindow); |  | ||||||
|  |  | ||||||
|     //选取了某个POI |  | ||||||
|     poiPicker.on('poiPicked', function (poiResult: any) { |  | ||||||
|       var source = poiResult.source, |  | ||||||
|         poi = poiResult.item, |  | ||||||
|         info = { |  | ||||||
|           source: source, |  | ||||||
|           id: poi.id, |  | ||||||
|           name: poi.name, |  | ||||||
|           location: poi.location.toString(), |  | ||||||
|           address: poi.address |  | ||||||
|         }; |  | ||||||
|       console.log(poi); |  | ||||||
|  |  | ||||||
|       marker.setMap(map); |  | ||||||
|       infoWindow.setMap(map); |  | ||||||
|  |  | ||||||
|       marker.setPosition(poi.location); |  | ||||||
|       infoWindow.setPosition(poi.location); |  | ||||||
|  |  | ||||||
|       infoWindow.setContent('地址: <pre>' + poi.name + '</pre>'); |  | ||||||
|       infoWindow.open(map, marker.getPosition()); |  | ||||||
|  |  | ||||||
|       map.setCenter(marker.getPosition()); |  | ||||||
|     }); |  | ||||||
|  |  | ||||||
|     poiPicker.onCityReady(function () { |  | ||||||
|       poiPicker.suggest('美食'); |  | ||||||
|     }); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   createInfoWindow(title: any, content: any) { |  | ||||||
|     var info = document.createElement('div'); |  | ||||||
|     info.className = 'custom-info input-card content-window-card'; |  | ||||||
|  |  | ||||||
|     //可以通过下面的方式修改自定义窗体的宽高 |  | ||||||
|     //info.style.width = "400px"; |  | ||||||
|     // 定义顶部标题 |  | ||||||
|     var top = document.createElement('div'); |  | ||||||
|     var titleD = document.createElement('div'); |  | ||||||
|     var closeX = document.createElement('img'); |  | ||||||
|     top.className = 'info-top'; |  | ||||||
|     titleD.innerHTML = title; |  | ||||||
|     closeX.src = 'https://webapi.amap.com/images/close2.gif'; |  | ||||||
|     closeX.onclick = this.closeInfoWindow; |  | ||||||
|  |  | ||||||
|     top.appendChild(titleD); |  | ||||||
|     top.appendChild(closeX); |  | ||||||
|     info.appendChild(top); |  | ||||||
|  |  | ||||||
|     // 定义中部内容 |  | ||||||
|     var middle = document.createElement('div'); |  | ||||||
|     middle.className = 'info-middle'; |  | ||||||
|     middle.style.backgroundColor = 'white'; |  | ||||||
|     middle.innerHTML = content; |  | ||||||
|     info.appendChild(middle); |  | ||||||
|  |  | ||||||
|     // 定义底部内容 |  | ||||||
|     var bottom = document.createElement('div'); |  | ||||||
|     bottom.className = 'info-bottom'; |  | ||||||
|     bottom.style.position = 'relative'; |  | ||||||
|     bottom.style.top = '0px'; |  | ||||||
|     bottom.style.margin = '0 auto'; |  | ||||||
|     var sharp = document.createElement('img'); |  | ||||||
|     sharp.src = 'https://webapi.amap.com/images/sharp.png'; |  | ||||||
|     bottom.appendChild(sharp); |  | ||||||
|     info.appendChild(bottom); |  | ||||||
|     return info; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   closeInfoWindow() { |  | ||||||
|     this.aMap.clearInfoWindow(); |  | ||||||
|   } |  | ||||||
| } |  | ||||||
| @ -21,7 +21,6 @@ import { SupplyManagementBulkDetailComponent } from './components/bulk-detail/bu | |||||||
| import { SupplyManagementVehicleDetailComponent } from './components/vehicle-detail/vehicle-detail.component'; | import { SupplyManagementVehicleDetailComponent } from './components/vehicle-detail/vehicle-detail.component'; | ||||||
| import { SupplyManagementAddDriversComponent } from './components/add-drivers/add-drivers.component'; | import { SupplyManagementAddDriversComponent } from './components/add-drivers/add-drivers.component'; | ||||||
| import { SupplyManagementOnecarPublishComponent } from './components/onecar-publish/onecar-publish.component'; | import { SupplyManagementOnecarPublishComponent } from './components/onecar-publish/onecar-publish.component'; | ||||||
| import { GaodeMapComponent } from './components/gaode-map/gaode-map.component'; |  | ||||||
| import { PublishGoodsChooseFamifiarComponent } from './components/choose-famifiar/choose-famifiar.component'; | import { PublishGoodsChooseFamifiarComponent } from './components/choose-famifiar/choose-famifiar.component'; | ||||||
| import { PublishchooseFamifiarSetCaptainComponent } from './components/choose-famifiar/set-captain/set-captain.component'; | import { PublishchooseFamifiarSetCaptainComponent } from './components/choose-famifiar/set-captain/set-captain.component'; | ||||||
| import { PublishchooseFamifiarAddComponent } from './components/choose-famifiar/add/add.component'; | import { PublishchooseFamifiarAddComponent } from './components/choose-famifiar/add/add.component'; | ||||||
| @ -42,7 +41,6 @@ const COMPONENTS: Type<void>[] = [ | |||||||
|   SupplyManagementVehicleDetailComponent, |   SupplyManagementVehicleDetailComponent, | ||||||
|   SupplyManagementAddDriversComponent, |   SupplyManagementAddDriversComponent, | ||||||
|   SupplyManagementOnecarPublishComponent, |   SupplyManagementOnecarPublishComponent, | ||||||
|   GaodeMapComponent, |  | ||||||
|   PublishGoodsChooseFamifiarComponent, |   PublishGoodsChooseFamifiarComponent, | ||||||
|   PublishchooseFamifiarSetCaptainComponent, |   PublishchooseFamifiarSetCaptainComponent, | ||||||
|   PublishchooseFamifiarAddComponent, |   PublishchooseFamifiarAddComponent, | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user