Ich arbeite mit Ebenen in Google Maps mit Geojson Daten.Google maps layer onclick change stil polygon
Was ich jetzt habe, ist eine Ebene mit vier verschiedenen Polygonen und wenn Sie darauf klicken, werden sie von Grau zu Grün. Aber wenn ich wieder klicke, ändert sich nicht wieder in grau und das ist der Zweck der Klick-Funktion.
map.data.setStyle(function(feature) {
var color;
if (feature.getProperty('isColorful')) {
color = '#009900';
}else{
color: 'grey';
}
return ({
fillColor: color,
strokeColor: color,
strokeWeight: 2
});
});
In meinem Fall funktioniert es in meinem Lektor, https://embed.plnkr.co/hi4MtjO8f0PN6rCW70rE/. Dies ist der vollständige Codeausschnitt.
Ich reparierte es !! ich die Position von ein paar Zeilen zu ändern und es auf false gesetzt oder wahr
map.data.setStyle(function(feature) {
var color;
if (feature.getProperty('isColorful')) {
feature.setProperty('isColorful', false);
color = '#009900';
}else{
color: 'grey';
}
return /** @type {google.maps.Data.StyleOptions} */({
fillColor: color,
strokeColor: color,
strokeWeight: 2
});
});
map.data.addListener('click', function(event) {
var name = event.feature.getProperty('name');
var index = vm.areas.indexOf(name);
if(index >= 0){
vm.areas.splice(index,1);
event.feature.setProperty('isColorful', false);
} else{
vm.areas.push(name);
event.feature.setProperty('isColorful', true);
}
$scope.$apply();
});
Hallo, können Sie uns den vollständigen relevanten Code zeigen? Oder noch besser, vervollständigen Sie das Snippet mit Ihrem Code, damit wir sehen können, dass es funktioniert. –
Ich werde das in einem Moment tun – MissesA