Как только я запускаю приложение в лаборатории, я получаю следующую ошибку:
ОШИБКА TypeError: Невозможно прочитать свойство 'setPosition'
Маркер - это, в основном, ваша позиция на карте. Я хочу, чтобы маркер изменил положение при перемещении.
Ionic поддерживает функцию marker.setPostion?
Это мой home.ts код:
getPosition(): void{
this.geolocation.getCurrentPosition()
.then(response => {
this.loadMap(response);
})
.catch(error =>{
console.log(error);
this.loading.dismiss();
})
this.geolocation.watchPosition().subscribe((position) => {
this.moveMarker(position);
}, (err) => {
console.log(err);
});
}
loadMap(position: Geoposition){
let latitude = position.coords.latitude;
let longitude = position.coords.longitude;
let mapEle: HTMLElement = document.getElementById('map');
let myLatLng = {lat: latitude, lng: longitude};
// creates the map
this.map = new google.maps.Map(mapEle, {
center: myLatLng,
zoom: 12
});
//adds the marker
google.maps.event.addListenerOnce(this.map, 'idle', () => {
this.loading.dismiss();
let marker = new google.maps.Marker({
position: myLatLng,
map: this.map,
title: 'HI!! IM HERE!!',
});
this.marcador = marker;
mapEle.classList.add('show-map');
console.log(latitude, longitude);
});
}
moveMarker(position: Geoposition){
let latitude = position.coords.latitude;
let longitude = position.coords.longitude;
let coords = new google.maps.LatLng(latitude, longitude);
this.speed = position.coords.speed * 3.6;
console.log(latitude, longitude);
this.marcador.setPosition( coords);
this.map.panTo(coords);
}