Google Maps Ionic 3 - PullRequest
       19

Google Maps Ionic 3

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

Я внедрил нативную Карту Google в своем приложении, установил зависимости, импортировал модуль для поставщиков в app.module.ts, и у меня есть следующий код в представлении: EventDetailsPage

Мои GoogleMapsверсия 5.0.0 бета.

import { Component, ViewChild } from '@angular/core';
import { IonicPage, NavController, NavParams, Platform } from 'ionic- 
angular';
import {
GoogleMaps,
GoogleMap,
GoogleMapsEvent,
LatLng,
MarkerOptions,
Marker
} from '@ionic-native/google-maps/ngx';

@IonicPage()
@Component({
 selector: 'page-event-details',
 templateUrl: 'event-details.html',
})
export class EventDetailsPage {

@ViewChild('map') element;
event: any;
slideOpts = {
 effect: 'flip'
};

constructor(public navCtrl: NavController, 
 public navParams: NavParams, 
 public googleMaps: GoogleMaps,
 public platform: Platform) {
  this.event = navParams.data;
}

goBack() {
 this.navCtrl.pop();
}  

ngAfterViewInit() {
  this.platform.ready().then(() => {
    console.log("Platform done")
    this.initMap();
  });
}

initMap() {

let map: GoogleMap = this.googleMaps.create(this.element.nativeElement);
//map.on(GoogleMapsEvent.MAP_READY).subscribe(() => {console.log('Map is ready!')});

map.one(GoogleMapsEvent.MAP_READY).then((data: any) => {

  let coordinates: LatLng = new LatLng(33.6396965, -84.4304574);

  let position = {
    target: coordinates,
    zoom: 17
  };

  map.animateCamera(position);

  let markerOptions: MarkerOptions = {
    position: coordinates,
    title: 'Our first POI'
  };

  const marker = map.addMarker(markerOptions)
    .then((marker: Marker) => {
      marker.showInfoWindow();
  });
})
}
}

И у меня появляется следующая ошибка, когда я вхожу в представление EventDetailsPage, я не знаю почему.Я запускаю приложение с ionic serve и cordova run browser и на мобильном телефоне, и у меня та же ошибка.

ERROR Error: Uncaught (in promise): TypeError: Cannot read property 
'BaseClass' of null
TypeError: Cannot read property 'BaseClass' of null
at GoogleMap.BaseClass (index.js:253)
at new GoogleMap (index.js:1024)
at GoogleMaps.create (index.js:208)
at EventDetailsPage.webpackJsonp.166.EventDetailsPage.initMap (event- 
details.ts:45)
at event-details.ts:39
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.js:17289)
at t.invoke (polyfills.js:3)
at r.run (polyfills.js:3)
at polyfills.js:3
at c (polyfills.js:3)
at polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.js:17280)
at t.invokeTask (polyfills.js:3)
at r.runTask (polyfills.js:3)
at o (polyfills.js:3)
at e.invokeTask [as invoke] (polyfills.js:3)
at p (polyfills.js:2)
at HTMLImageElement.v (polyfills.js:2)
...