我试图在我的地图中添加一些custom options,以便用户可以像Transit,道路和POI那样打开和关闭某些内容。但是,当我使用setOptions
时,它会忘记我以前的设置并应用新的设置。
例如。在下面的代码中,默认情况下会关闭传输图标标签。但是,当我单击POI切换时,将显示传输图标。
我如何克服这个障碍?我试过几种方式:
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 43.693226, lng: -79.383184},
styles: [
{
featureType: 'transit',
elementType: 'labels.icon',
stylers: [{visibility: 'off'}]
},
{
featureType: 'poi',
elementType: 'labels',
stylers: [{visibility: 'off'}]
},
]
});
var poiToggleOn = false;
document.getElementById('poiToggle').addEventListener('click', function() {
if (poiToggleOn === false) {
poiToggleOn = true;
map.setOptions({styles: [
{
featureType: 'poi',
elementType: 'labels',
stylers: [{visibility: 'on'}]
}
]})
} else {
poiToggleOn = false;
map.setOptions({styles: [
{
featureType: 'poi',
elementType: 'labels',
stylers: [{visibility: 'off'}]
}
]})
}
});