溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ng2-baidu-map怎么在Angular4中使用

發(fā)布時間:2021-03-24 17:19:28 來源:億速云 閱讀:167 作者:Leah 欄目:web開發(fā)

本篇文章給大家分享的是有關(guān)ng2-baidu-map怎么在Angular4中使用,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

1.安裝

npm install angular2-baidu-map

2.在app.module.ts配置

ak key在http://lbsyun.baidu.com/apiconsole/key中創(chuàng)建

import { BrowserModule } from '@angular/platform-browser'
import { NgModule } from '@angular/core'
import { AppComponent } from './app.component'
import { BaiduMapModule } from 'angular2-baidu-map'
@NgModule({
 declarations: [AppComponent],
 imports: [BrowserModule, BaiduMapModule.forRoot({ ak: 'your ak' })],
 providers: [],
 bootstrap: [AppComponent]
})
export class AppModule {}

3.在app.component.html使用

<div  >
 <baidu-map [options]="opts" >
  <!--<marker [point]="point" [options]="markOpts" (loaded)="" (clicked)=""></marker>-->
  <marker *ngFor="let marker of markers" [point]="marker.point" [options]="marker.options"></marker>
  <!--導(dǎo)航控件-->
  <control type="navigation" [options]="controlOpts"></control>
  <!--地圖全景控件-->
  <control type="overviewmap" [options]="overviewmapOpts"></control>
  <!--比例尺-->
  <control type="scale" [options]="scaleOpts"></control>
  <!--地圖類型-->
  <control type="maptype" [options]="mapTypeOpts"></control>
  <control type="geolocation" [options]="geolocationOpts"></control>
 </baidu-map>
</div>

4.在app.component.ts

import {Component, OnInit} from '@angular/core';
import {
 MapOptions, Point, MarkerOptions, NavigationControlOptions, ControlAnchor,
 NavigationControlType, OverviewMapControlOptions, ScaleControlOptions, MapTypeControlOptions, MapTypeControlType,
 GeolocationControlOptions
} from 'angular2-baidu-map';
@Component({
 selector: 'app-root',
 templateUrl: './app.component.html',
 styleUrls: ['./app.component.sass']
})
export class AppComponent {
 public opts: MapOptions;
 public markers: Array<{ point: Point; options?: MarkerOptions }>;
 public controlOpts: NavigationControlOptions;
 public overviewmapOpts: OverviewMapControlOptions;
 public scaleOpts: ScaleControlOptions;
 public mapTypeOpts: MapTypeControlOptions;
 public geolocationOpts: GeolocationControlOptions;
 // 文字標(biāo)注
 public text: string;
 public onMarkerLoad(marker: any) {
  const label = new window.BMap.Label('文字標(biāo)注‘, {
   offset: new window.BMap.Size(20, -12)
  });
  label.setStyle({
   border: '1px solid #d81e06',
   color: '#d81e06',
   fontSize: '10px',
   padding: '1px'
  });
  marker.setLabel(label);
 }
 constructor() {
  this.opts = {
   centerAndZoom: {   // 設(shè)置中心點和縮放級別
    lng: 120.62,  // 經(jīng)度
    lat: 31.32,  // 緯度
    zoom: 15      // 縮放級別
   },
   minZoom: 3, // 最小縮放級別的地圖
   maxZoom: 19, // 最大縮放級別的地圖
   enableHighResolution: true, // 是否用高分辨率的地圖,default:true
   enableAutoResize: true, // 是否可以自動調(diào)整大小,default:true
   enableMapClick: true, // 地圖是否可以點擊,default:true
   disableDragging: false, // 是否禁用地圖拖動功能
   enableScrollWheelZoom: true, // 是否啟用滾輪進(jìn)行縮放功能
   disableDoubleClickZoom: false, // 是否禁用雙擊縮放功能
   enableKeyboard: true, // 是否啟用鍵盤移動地圖功能
   enableInertialDragging: false,   // 是否啟用慣性阻力函數(shù)
   enableContinuousZoom: true, // 是否啟用連續(xù)縮放功能
   disablePinchToZoom: false,  // 是否禁用縮放功能的縮放
   cursor: '',     // 設(shè)置默認(rèn)的光標(biāo)樣式,應(yīng)該遵循CSS規(guī)范
   draggingCursor: '', // 設(shè)置默認(rèn)的拖動光標(biāo)樣式,應(yīng)該遵循CSS規(guī)范
   currentCity: '蘇州市',  // 設(shè)置當(dāng)前的城市
  };
 
  // 這是地圖標(biāo)記marker
  this.markers = [
   {
    options: {
     icon: {
      imageUrl: '/assets/1.jpg',
      size: {
       height: 60,
       width: 50
      }
     },
     title: 'asdkjgaslfkjasd'
    },
    point: {
     lng: 120.62,  // 經(jīng)度
     lat: 31.32,  // 緯度
    }
   },
   {
    point: {
     lng: 120.63,  // 經(jīng)度
     lat: 31.32,  // 緯度
    }
   },
   {
    point: {
     lng: 120.63,  // 經(jīng)度
     lat: 31.31,  // 緯度
    }
   }
  ];
  // 這是控件control
  this.controlOpts = {     // 導(dǎo)航控件
   anchor: ControlAnchor.BMAP_ANCHOR_TOP_LEFT,   // 顯示的控件的位置
   type: NavigationControlType.BMAP_NAVIGATION_CONTROL_LARGE,  // 用來描述它是什么樣的導(dǎo)航
   offset: {                    // 控件的大小
    width: 30,
    height: 30
   },
   showZoomInfo: true,               // 是否展示當(dāng)前的信息
   enableGeolocation: true             // 是否啟用地理定位功能
  };
  this.overviewmapOpts = {  // 地圖全景控件
   anchor: ControlAnchor.BMAP_ANCHOR_BOTTOM_RIGHT, // 顯示的控件的位置
   isOpen: true                  
  };
  this.scaleOpts = {     // 比例尺控件
   anchor: ControlAnchor.BMAP_ANCHOR_BOTTOM_LEFT
  };
  this.mapTypeOpts = {    // 地圖類型
   type: MapTypeControlType.BMAP_MAPTYPE_CONTROL_HORIZONTAL
  };
  // Geolocation 和Panorama 沒有屬性
 }
}

以上就是ng2-baidu-map怎么在Angular4中使用,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI