używam dyrektywę AngularUI Mapy Google w ten sposób:AngularUI - Google Maps - Usunąć marker
UpdateData.html
<div ng-repeat="marker in myMarkers" ui-map-marker="myMarkers[$index]"></div>
<div class="control-group">
<label class="control-label">Situación</label>
<div class="controls">
<div id="map_canvas" ui-map="model.myMap" class="map" ui-event="{'map-click': 'addMarker($event)'}" ui-options="mapOptions"></div>
</div>
</div>
UpdateController
if (!$scope.myMarkers) {
$scope.myMarkers = [];
}
if (!$scope.myMap) {
$scope.model = {
myMap: undefined
};
}
$scope.mapOptions = {
center : new google.maps.LatLng(35.784, -78.670),
zoom : 15,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
$scope.addMarker = function($event) {
$scope.myMarkers.push(new google.maps.Marker({
map : $scope.model.myMap,
position : $event.latLng
}));
$scope.event.lat = $event.latLng.lat();
$scope.event.lng = $event.latLng.lng();
};
mogę dodać nowe znaczniki i mapa są pomyślnie aktualizowane, ponieważ nie mogę ich usunąć. Co zrobić, jest następujący:
$scope.myMarkers.splice(0, $scope.myMarkers.length);
myMarkers
tablica zostanie pusty ale mapa nadal zawiera usuniętych znaczników. Wygląda na to, że tablica i mapa myMarkers
są zsynchronizowane podczas wysyłania nowych znaczników do tablicy myMarkers
, ale nie wtedy, gdy macierz myMarkers
jest wyczyszczona.
witam mam ten sam problem, i to nie dla mnie, bo nie jestem 'używając nowego google.maps.Marker ({ mapa: $ scope.model.myMap, }), aby dodać znacznik, ale funkcję dostosowywania, aby dodać znaczniki z ikoną dostosowywania i informacjami. Czy masz pomysł, jak sobie z tym poradzić? – Ayyoub