Маркеры Ionic 3 не отображаются на карте Google - PullRequest
0 голосов
/ 11 февраля 2019

Мне нужно показать маркеры на карте.я получаю код, откуда-то карта загружается нормально, но в консоли отображается ошибка InvalidValueError: setMap: не экземпляр Map;а не экземпляр StreetViewPanorama.любой может помочь, как я могу решить это Спасибо

  import { Component } from '@angular/core';
  import { NavController } from 'ionic-angular';

  import { ViewChild } from '@angular/core'


  import { GoogleMaps } from '@ionic-native/google-maps';

  declare var google;

 @Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
  export class HomePage {

@ViewChild('map') mapElement: ElementRef;
private map: any;


 constructor(public navCtrl: NavController, private googleMaps: GoogleMaps) 
{} 


loadMap() {
let latLng = new google.maps.LatLng(24.926295, 67.130499);

let mapOptions = {
 center: latLng,
 zoom: 15,
 mapTypeId: google.maps.MapTypeId.ROADMAP
   }

this.map = new google.maps.Map(this.mapElement.nativeElement, mapOptions);    

 var locations = [
  ['Darul-sehat Hospital', 24.861624, 67.006629],
  ['Memon Hospital ', 24.9456, 67.146],

];

var infowindow = new google.maps.InfoWindow();

var marker, i;

for (i = 0; i < locations.length; i++) {  
  marker = new google.maps.Marker({
  position: new google.maps.LatLng(locations[i][1], locations[i][2]),
  map: map
 });

  google.maps.event.addListener(marker, 'click', (function(marker, i) {
   return function() {
   infowindow.setContent(locations[i][0]);
   infowindow.open(map, marker);
   }
  })(marker, i));
}
}

}  

1 Ответ

0 голосов
/ 11 февраля 2019

Кажется, вы не используете правильную ссылку на карту Google.Попробуйте приведенный ниже код, который работает для меня.

marker = new google.maps.Marker({
  position: new google.maps.LatLng(locations[i][1], locations[i][2]),
  map: this.map
});

Единственное, что вы хотите изменить, это map: map на map: this.map в вышеуказанной функции.

...